SAIL - Atak Jednostek

Wszelkie pytania na temat SAIL'a i modowania OW.
User avatar
Blashix
Community Veteran
Community Veteran
Posts: 375
Joined: Sun Apr 29, 2007 8:23 am
Location: Polska

:P

Post by Blashix »

Code: Select all

every 0$1 do
Begin
enable;
If IsDying(postac) then
Begin
YouLost('postac');
end;
end;
Gdy ten kod wpiszesz, postac jeżeli padnie to wyświetlili się że przegrałeś i zakończy misję. Trzeba jeszcze dodać coś takeigo w pliku texts.txt :P

Code: Select all

| postac
Porucznik Postac nie żyje.
--> 02.12.2008 PC <--
| AMD Athlon 64 X2 5400 Black Edition 3,4Ghz + Cooling Pentagram Freezone HP-120 AlCu Karakorum | GoodRam DDR2 2x 2GB 810Mhz CL4 + Arctic Cooling Arctic RC | Asus M3A78 PRO AMD 780G (Radeon HD 3200 & HD Audio Realtek ALC1200) | Radeon HD 4850 Gigabyte 512MB 700/2000 MHz + Zalman Cooling | Samsung SpinPoint T166 320 GB (SATA II, 16MB cache, NCQ) | LG SuperMulti DVD LightScribe | Power: Chieftec (GPS-500AB-A) 500W all in: NZXT Apollo Crafted Series Black

Mouse: A4TECH XL-750F
Keyboard: Saitek Eclipse II
Monitor: 19 LG Flatron W1952TQ-PF
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

A jak dialog

Post by Michaeilo »

To już wiem i działa mi. A jak zrobić, żeby postać przy upadaniu mówiła swoje ostatnie słowa? :D
Radzio
Site Administrator
Site Administrator
Poland
Posts: 2898
Joined: Fri Jul 28, 2006 10:58 am
Location: Bialystok, Poland

Post by Radzio »

Po prostu przed YouLost dajesz:

Code: Select all

ForceSay(ziomus,'tekst');
Tekst to pzrykladowy identyfikator do jakiejs wypowiedzi w pliku Texts.txt
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Pytanka xD

Post by Michaeilo »

Mam dwa małe pytanka.
1. Jak zrobić, aby kiedy już gość dojdzie do danej arei, potem w jakimś odstępie czasu pojawiały się dwa (albo inna liczba) ataki.
2. Czy jest jakaś komenda aby pojazdy (lub ludzie) atakowali coś co znajduje się na danej arei.
User avatar
NNPlaya
Community Veteran
Community Veteran
Posts: 372
Joined: Sat Oct 14, 2006 4:52 pm
Location: Tuszyn, Polska
Contact:

Post by NNPlaya »

2. ComMoveAgressive([jednostka1,jednostka2],X,Y); Gdzie zamiast X i Y podajesz współrzędne wybrane z arei.
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Atak

Post by Michaeilo »

A co z tymi atakami, co jakieś 2 minuty? Kiedy gościu dojdzie do arei, po tym zdarzeniu, dwie minuty po ma nastąpić atak.
User avatar
Blashix
Community Veteran
Community Veteran
Posts: 375
Joined: Sun Apr 29, 2007 8:23 am
Location: Polska

Post by Blashix »

No lol jak chcesz atak co 2 minuty na jakiejś arei to piszesz every 2$0 cel (trigger jakos tak) is InArea(gostek,atak); do cos takiego.

2(Minuty)$0(SEKUNDY)
--> 02.12.2008 PC <--
| AMD Athlon 64 X2 5400 Black Edition 3,4Ghz + Cooling Pentagram Freezone HP-120 AlCu Karakorum | GoodRam DDR2 2x 2GB 810Mhz CL4 + Arctic Cooling Arctic RC | Asus M3A78 PRO AMD 780G (Radeon HD 3200 & HD Audio Realtek ALC1200) | Radeon HD 4850 Gigabyte 512MB 700/2000 MHz + Zalman Cooling | Samsung SpinPoint T166 320 GB (SATA II, 16MB cache, NCQ) | LG SuperMulti DVD LightScribe | Power: Chieftec (GPS-500AB-A) 500W all in: NZXT Apollo Crafted Series Black

Mouse: A4TECH XL-750F
Keyboard: Saitek Eclipse II
Monitor: 19 LG Flatron W1952TQ-PF
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Postacie

Post by Michaeilo »

To jak w końcu z tym atakiem? A takie małe pytanko poza tematem: czy jest jakaś komenda, aby coś się działo jeżeli dana postać widzi inną postać? :?:
Anarchy
Site Moderator
Chad
Posts: 1223
Joined: Thu May 03, 2007 11:02 am

Post by Anarchy »

Code: Select all

every 0$1 trigger See(5,XXX)or See(5,XXX)
begin
//Kod
end;
Chyba coś takiego bo pisałem z pamięci.
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Tak???

Post by Michaeilo »

Mam rozumieć, że XXX to ident. postaci, tak?
User avatar
Odyseusz
Community Veteran
Community Veteran
Posts: 180
Joined: Wed Jan 24, 2007 12:37 pm
Location: Wygwizdowo Dolne

Post by Odyseusz »

Ja proponuje coś takiego:

Code: Select all

every 0$1 trigger GetDistUnits(heros,postac)<8 do /// heros i postac to identyfikatory oczywiście, a 8 to odległośc między nimi
Begin
/// dialog, czy co tam chcesz
end;
Radzio
Site Administrator
Site Administrator
Poland
Posts: 2898
Joined: Fri Jul 28, 2006 10:58 am
Location: Bialystok, Poland

Post by Radzio »

Tak...
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Komenda nie działa ;(

Post by Michaeilo »

Kurcze pieczone :twisted: Nie działa mi ta komenda:

Code: Select all

ComMoveAgressive(gość,34,4);
Pisze taki błąd:

Code: Select all

Linking error at main line 163: undefined identifier 'ComMoveAgressive'!
Czy to może mieć związek, że mam OW w wersji 1.07 a nie tej najnowszej 1.08?
Radzio
Site Administrator
Site Administrator
Poland
Posts: 2898
Joined: Fri Jul 28, 2006 10:58 am
Location: Bialystok, Poland

Post by Radzio »

Nie moze miec, bo zle napisales, powinno byc:

Code: Select all

ComAgressiveMove
A i zainstaluj w koncu te 1.08 :P
Michaeilo
Community Veteran
Community Veteran
Posts: 343
Joined: Tue Aug 14, 2007 10:44 am
Location: Poland
Contact:

Palec xD

Post by Michaeilo »

NNPlaya wrote:2. ComMoveAgressive([jednostka1,jednostka2],X,Y); Gdzie zamiast X i Y podajesz współrzędne wybrane z arei.
Nie ja źle napisałem tylko NNPlaya się pewnie znów palec omsknął. :lol:

[ Dodano: Nie Wrz 02, 2007 5:24 pm ]
A jeszcze jedno jaki jest kod aby coś sie wydarzyło jeżeli na przykład coś jest zniszczone? Nie chodzi mi o kod ''isdying(pojazd1);'' bo to w moim wypadku się nie sprawdza (u mnie działa tylko jeżeli wszystkie pojazdy płoną jednocześnie:

Code: Select all

every 0$1 trigger isdying(pojamt1) and isdying(pojamt2) and isdying(pojamt3) and isdying(pojamt4) and isdying(pojamt5) and isdying(pojamt6) and isdying(pojamt7) and isdying(pojamt8) do
[nie robię tego entera, tylko samo mi się przenosi, w SAIL'u napisane jest w jednej linii]

PROBLEM CIĄG DALSZY
Z tym powyżej już sobie poradziłem ^^. Teraz problem jest inny. Chcę aby misja kończyła się kiedy pozabijam ruskich, którzy pojawiają sie po zniszczeniu ich magazynu. To piszę isdead idt. błędu w kodzie nie ma. Tyle, że od razu wygrywam misję bo moja komenda sprawdza co 1 sek. czy ruskie nie żyją, a jak się jeszcze nie pojawili to bierze, że są isdead no i koła się zamyka. Co w tej sytuacji zrobić???
Post Reply