SAIL - Błąd czy przeoczenie

Wszelkie pytania na temat SAIL'a i modowania OW.
Destrojer
Soldier level 1
Soldier level 1
Príspevky: 10
Dátum registrácie: Fri Jul 27, 2007 5:30 pm

Post od používateľa Destrojer »

Więc jak zapisać to every aby działało po wybraniu odpowiedzi nr 1 ?
Pozdrawiam
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: Fri Jul 28, 2006 10:58 am
Location: Bialystok, Poland

Post od používateľa Radzio »

To nie ma sensu te every i tak jest dziwne, bo jesli co 5 sekund bedzie tworzony nowy oddzial atakujacy to po minucie bedzie ich 12*5=60
Po drugie: AddComAttackUnit([soldat1,soldat2,soldat3,soldat4,soldat5],FilterAllUnits([f_side,2]));
To komenda na atakowanie jednej jednostki a nie filtru :P
Co do reszty tego kodu to nie chce mi sie juz pisac, bo tam tez znalazloby sie cos do skrytykowania. Tak wiec radze ci sie zastanowic nad tym kodem, a jesli juz koniecznie chcesz zeby to dzialalo to pobaw sie z MARKED:
http://wiki.owsupport.com/index.php?tit ... _Radzio.29

Mysle, ze wszystko jasne, jesli nie masz pytan to temat do zmakniecia.
Destrojer
Soldier level 1
Soldier level 1
Príspevky: 10
Dátum registrácie: Fri Jul 27, 2007 5:30 pm

Post od používateľa Destrojer »

Mam ostatnie pytanie , aby nie robić nowego tematu .

Jak ma wyglądać kod , aby gracz przegrał gdy zostaną zabici wszyscy jego ludzie ?
Pozdrawiam
User avatar
NNPlaya
Community Veteran
Community Veteran
Príspevky: 372
Dátum registrácie: Sat Oct 14, 2006 4:52 pm
Location: Tuszyn, Polska
Kontaktovať používateľa:

Post od používateľa NNPlaya »

Code: Select all

every 0$1 trigger FilterAllUnits([[f_side,X],[f_type,unit_human]])=0 do
Begin
YouLost('Alldead');
end;
Zamiast X wstawiasz swój numer gracza, a 'Alldead' zastępujesz swoim identyfikatorem z pliku .wri. Przykład:

Code: Select all

| Alldead
Wszyscy Twoi ludzie skończyli w piachu.
Michaeilo
Community Veteran
Community Veteran
Príspevky: 343
Dátum registrácie: Tue Aug 14, 2007 10:44 am
Location: Poland
Kontaktovať používateľa:

Kolejne coś źle

Post od používateľa Michaeilo »

Na początek kilka słów do Radzia xD. Jestem początkujący w SAIL'u więc niektórych rzeczy po prostu nie wiem, a po drugie to nie warto się o to denerwować. :lol:
Teraz napiszę kolejny problem z tym zapytaniem. Pojawia się znowu błąd:

Image

Naprawdę nie jestem taki lol i próbowałem rozgryźć o co chodzi, ale nic. Szukałem tej ''line 212'' (myślę, że chodzi o wiersz 212-sty), ale u mnie w SAIL'u nawet tylu wierszy nie ma. Patrzyłem też ''end''.
Podam znowu mój kod SAIL'a z tym zapytaniem:

Code: Select all

every 0$1 trigger IsInArea(lol,AreaUc) do

begin
InGameOn;
ComMoveToArea(robert,AreaUC);
Say(lol,'H4');
Say(robert,'rob1');
InGameOff;
Case Query('Zapytanie1') of
1 : begin
Say(lol,'H5');
Say(robert,'rob2');
Say(robert,'rob3');
Say(zol4,'Z1');
Say(rob,'rob4');
Say(lol,'H6');


ComMoveToArea(robert,areapol);
end;
2 : begin
Say(robert,'rod3');
SetSide(robert,1);
YouLost('Robert');
end;
end;
Ludzie co jest źle? Pomocy!?

PS Piszę w tym temacie bo uznałem, że nie ma sensu zakładać nowego xD Radziu bez nerwów xD
User avatar
NNPlaya
Community Veteran
Community Veteran
Príspevky: 372
Dátum registrácie: Sat Oct 14, 2006 4:52 pm
Location: Tuszyn, Polska
Kontaktovať používateľa:

Post od používateľa NNPlaya »

Nie tylko Radzio zaraz wyjdzie z siebie. MUSISZ mieć ten wiersz 212 (tak, zgadłeś, chodzi o linijki kodu), puste linie też licz. Błąd oznacza, że brakuje "end"a bądź ";", a zamiast tego od razu jest "on".
Michaeilo
Community Veteran
Community Veteran
Príspevky: 343
Dátum registrácie: Tue Aug 14, 2007 10:44 am
Location: Poland
Kontaktovať používateľa:

Dobra, a co z tym?

Post od používateľa Michaeilo »

No NNPlaya i Radzio nie denerwujcie się. xD Dopiero się uczę :) A tak pozatym to znalazłem tą linijkę i cały ten problem. Tylko nie wiem czego tu brakuje. ''begin'' jest (naliczyłem sie ich aż dwa) więc na końcu też mam trzy ''end;'' ale nadal coś jest nie tak. Oto kod:

Code: Select all

on enterbuilding(b,un) do // to jest ta feralna linijka 212
begin
if un=lol then
if b=eon then
begin
AddMedal('med1',1);
AddMedal('med2',1);
AddMedal('med3',1);
GiveMedals('Main');
RewardPeople(lol);
SaveCharacters(lol,'lol');
YouWin;
end;
end;
User avatar
NNPlaya
Community Veteran
Community Veteran
Príspevky: 372
Dátum registrácie: Sat Oct 14, 2006 4:52 pm
Location: Tuszyn, Polska
Kontaktovať používateľa:

Post od používateľa NNPlaya »

Z komunikatu wynika, że błąd jest na poprzedniej linijce :lol:

Daj większy fragment kodu, wystarczy parę linijek. Zapomniałeś może o ";" czy czymś tam...

Ja jestem całkiem cierpliwy, ale do czasu....
Michaeilo
Community Veteran
Community Veteran
Príspevky: 343
Dátum registrácie: Tue Aug 14, 2007 10:44 am
Location: Poland
Kontaktovať používateľa:

Kod

Post od používateľa Michaeilo »

Już daje. Oto on: (z tym zapytaniem):

Code: Select all

every 0$1 trigger IsInArea(lol,AreaUc) do

begin
InGameOn;
ComMoveToArea(robert,AreaUC);
Say(lol,'H4');
Say(robert,'rob1');
InGameOff;
Case Query('Zapytanie1') of
1 : begin
Say(lol,'H5');
Say(robert,'rob2');
Say(robert,'rob3');
Say(zol4,'Z1');
Say(robert,'rob4');
Say(lol,'H6');


ComMoveToArea(robert,areapol);
end;
2 : begin
SetSide(robert,1);
YouLost('Robert');
end;
end;

on enterbuilding(b,un) do // to ta 212 linijka
begin
if un=lol then
if b=eon then
begin
AddMedal('med1',1);
AddMedal('med2',1);
AddMedal('med3',1);
GiveMedals('Main');
RewardPeople(lol);
SaveCharacters(lol,'lol');
YouWin;
end;
end;
PS NNPlaya tyle wystarczy?
User avatar
NNPlaya
Community Veteran
Community Veteran
Príspevky: 372
Dátum registrácie: Sat Oct 14, 2006 4:52 pm
Location: Tuszyn, Polska
Kontaktovať používateľa:

Post od používateľa NNPlaya »

Brakuje jednego enda przed tą linijką 212.
Anarchy
Site Moderator
Chad
Príspevky: 1223
Dátum registrácie: Thu May 03, 2007 11:02 am

Post od používateľa Anarchy »

LoL. Nie przypuszczałem że można być tak... eee... nie wiem :P
Napísať odpoveď