Medal za ludzi

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Zamknuté
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Chciałem zrobić ,aby po stracie ludzi gracz nie dostał medalu, więc napisałem:

Код: Выделить всё

every 0$1 trigger FilterAllUnits([[f_side,1],[f_type,unit_human]])=0 do
Begin
AddMedal('cel',1);
AddMedal('rob',1);
If FilterAllUnits([[f_side,3],[f_type,unit_human],])<15 then
AddMedal('syberyt',-1);
AddMedal('syberyt',1);
GiveMedals('MAIN');
YouWin;
end;
To nie działa, próbowałem różnych sposobów (z else i w innych warunkach, ale nic) Proszę o korekte tego kodu.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Аватара пользователя
Gothuk
Site Administrator
Site Administrator
Poland
Príspevky: 985
Dátum registrácie: Вт сен 04, 2007 6:10 pm
Откуда: Poland, Warsaw
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Gothuk »

Код: Выделить всё

every 0$1 trigger FilterAllUnits([[f_side,1],[f_type,unit_human]])=0 do
Begin
   AddMedal('cel',1);
   AddMedal('rob',1);
   If FilterAllUnits([[f_side,3],[f_type,unit_human]])<15 then AddMedal('syberyt',-1)
   Else AddMedal('syberyt',1);
   GiveMedals('MAIN');
   YouWin;
end;
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Gothuk писал(а):

Код: Выделить всё

every 0$1 trigger FilterAllUnits([[f_side,1],[f_type,unit_human]])=0 do
Begin
   AddMedal('cel',1);
   AddMedal('rob',1);
   If FilterAllUnits([[f_side,3],[f_type,unit_human]])<15 then AddMedal('syberyt',-1)
   Else AddMedal('syberyt',1);
   GiveMedals('MAIN');
   YouWin;
end;
Ten kod nic nie zmienił, dalej nawet jak mam dwóch ludzi dostaje medal.

2) Nie chce zakładać nowych tematów więc napiszę tu:

Код: Выделить всё

export hek;

every 0$1 trigger FilterAllUnits([[f_side,2],[f_type,unit_human]])=0 do
Begin
InGameOn;
DialogueOn;
   Say(bur,'MojDialog5');
   Say(ser,'MojDialog6');
   InGameOff;
DialogueOff;
   AddMedal('cel',1);
   AddMedal('rob',1);
   AddMedal('syberyt',-1);
uc_side=2;
uc_nation=2;
hc_skills=[10,4,6,3];
hc_class=1;
hc_sex=2;
hc_importance=0;
hc_name='Heike Stayer';
hc_gallery='ru';
hc_face_number=24;
hek=CreateHuman;
PlaceUnitArea(hek,heike,false);
AddComAgressiveMove([hek],106,17);
 If GetLives(hek)>300 then
DialogueOn;
Say(hek,'MojDialog7');
SayRadio(ser,'MojDialog8');
SayRadio(sewi,'MojDialog9');
DialogueOff;
AddMedal('syberyt',1);
GiveMedals('MAIN');
YouWin;
end;
Ten kod nie chce mi poprawnie działać, kiedy pojawia się ,,hek" od razu kończy się misja wraz z medalem za jej schwytanie, a mi chodziło o to, żeby ją poranić i wtedy wyświetlają się dialogi i gracz wygrywa.

Mam jeszcze kod, który działa, że jak dojdzie do areny z życiem powyżej 300 to też gracz wygrywa, tyle że bez medalu, bez tego kodu tamto działa, z tym nie.

Ps. Jest to kod podobny z tego z misji 7 rosyjskiej, ale nie znalazłem tam nic podobnego do mojego. Proszę o pomoc.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

Po pierwsze, czemu zrobiłeś listę w AddComAgressiveMove z jedną jednostką? Usuń nawiasy kwadratowe.
Twój problem jest logiczny, skoro napisałeś:

Код: Выделить всё

If GetLives(hek)>300 then
DialogueOn;
To jeśli W TYM MOMENCIE hek będzie miała mniej niż 300 życia to włączy się DialogueOn;, w przeciwnym wypadku po prostu pójdzie dalej.
Powinieneś nakazać kodowi czekać, dopóki się to nie stanie (jeśli to gracz ma obniżyć jej poziom zdrowia, to wyłącz także InGame):

Код: Выделить всё

repeat
wait(1);
until GetLives(hek)>300;
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

Ty, dzióbek nie w tą stronę xD Chyba się starzeję xD

EDIT: Czemu usunąłeś ten post przed chwilą?
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Код: Выделить всё

export hek;

every 0$1 trigger FilterAllUnits([[f_side,2],[f_type,unit_human]])=0 do
Begin
InGameOn;
DialogueOn;
   Say(bur,'MojDialog5');
   Say(ser,'MojDialog6');
   InGameOff;
DialogueOff;
   AddMedal('cel',1);
   AddMedal('rob',1);
   AddMedal('syberyt',-1);
uc_side=2;
uc_nation=2;
hc_skills=[10,4,6,3];
hc_class=1;
hc_sex=2;
hc_importance=0;
hc_name='Heike Stayer';
hc_gallery='ru';
hc_face_number=24;
hek=CreateHuman;
PlaceUnitArea(hek,heike,false);
AddComAgressiveMove(hek,106,17);
 If GetLives(hek)>300 then
repeat
wait(1);
until GetLives(hek)>300;
Say(hek,'MojDialog7');
SayRadio(ser,'MojDialog8');
SayRadio(sewi,'MojDialog9');
AddMedal('syberyt',1);
GiveMedals('MAIN');
YouWin;
end;

Код: Выделить всё

export hek;

every 0$1 trigger FilterAllUnits([[f_side,2],[f_type,unit_human]])=0 do
Begin
InGameOn;
DialogueOn;
   Say(bur,'MojDialog5');
   Say(ser,'MojDialog6');
   InGameOff;
DialogueOff;
   AddMedal('cel',1);
   AddMedal('rob',1);
   AddMedal('syberyt',-1);
uc_side=2;
uc_nation=2;
hc_skills=[10,4,6,3];
hc_class=1;
hc_sex=2;
hc_importance=0;
hc_name='Heike Stayer';
hc_gallery='ru';
hc_face_number=24;
hek=CreateHuman;
PlaceUnitArea(hek,heike,false);
AddComAgressiveMove(hek,106,17);
repeat
wait(1);
until GetLives(hek)>300;
Say(hek,'MojDialog7');
SayRadio(ser,'MojDialog8');
SayRadio(sewi,'MojDialog9');
AddMedal('syberyt',1);
GiveMedals('MAIN');
YouWin;
end;
Próbowałem powyższych dwóch kombinacji, ale nic to nie zmieniło, teraz ona idzie do celu i gada swój dialog zaplanowany po schwytaniu, potem kończy się misja.

EDIT: Bo się pomyliłem w spisywaniu kodu.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

Usuń ten if, dzióbek tu w drugą stronę trzeba:

Код: Выделить всё

repeat
wait(1);
until GetLives(hek)>300;  // tu na <
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Od razu lepiej :D , dzięki. A i jeszcze jedno, jak chce zrobić medal za straty ludzi to jak to w sumie ma wyglądać, bo ten kod Gothuka zabardzo nie chce działać??
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

Kod Gocia jest ok. Oczywiście, jeśli są to dwie oddzielne misje, bo w przeciwnym wypadku to nie ma sensu.
Jeśli masz ciągle ten sam problem, polecam wysłanie moda.
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Radzio писал(а):Kod Gocia jest ok. Oczywiście, jeśli są to dwie oddzielne misje, bo w przeciwnym wypadku to nie ma sensu.
Jeśli masz ciągle ten sam problem, polecam wysłanie moda.
Znaczy, nie za bardzo Cię rozumiem ja chce ten kod do jednej misji, po prostu jak masz mniej niż 15 ludzi nie dostajesz medalu jak masz więcej niż 15 lub 15 dostajesz medal. Jak to ma być?
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

To tak właśnie zadziałać powinien kod Gocia.
Wyślij tego moda, może coś gdzieś indziej jest nie tak.
Аватара пользователя
Pablo Abruzzi
Soldier level 5
Soldier level 5
Príspevky: 269
Dátum registrácie: Пн июл 28, 2008 3:09 pm
Откуда: Polska
Kontaktovať používateľa:

Re: Medal za ludzi

Сообщение od používateľa Pablo Abruzzi »

Trochę dziwne, chyba mnie źle zrozumiałeś: ten kod działa tylko nic nowego nie wnosi wybiłem sobie ludzi tak, że miałem ich dwóch i dalej dostawałem medal za brak strat. Tak ma być?

EDIT: Miałeś rację musiałem pozmieniać kilka kodów o tych postaciach, które nie mogą zginąć i działa, dziękuje tobie i Gothukowi :P .
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Re: Medal za ludzi

Сообщение od používateľa Radzio »

You are welcome.

[Topic closed]
Zamknuté