Page 2 of 5
Posted: Sun Jan 14, 2007 6:50 pm
by Radzio
hehe, wszystko sie da...
wiec tak:
1 problem: kod bedzie taki
Code: Select all
every 0$1 trigger IsInArea(Jawor,Area01) or IsInArea(Nadol,Area01) or IsInArea(Pamel,Area01) do
begin
//twoj kod
end;
2 problem: wielokrotne jednostki w jednej komendzie wstawiaj w kwadratowe nawiasy (chodzi ci chyba o wynagradzanie ludzi tak?):
Code: Select all
RewardPeople([1ludek,2ludek,3ludek]);
savecharacters nie zaakceptuje wielokrotnosci (mam na mysli ze nie da ci to zamierzonego efektu bo zapisze zestaw postaci jako jedna zmienna)
3 problem: komenda na zablokowanie:
na odblokowanie:
temat
Posted: Mon Jan 15, 2007 3:59 pm
by NaDoL
Ok działa, mam jeszcze pytanie jak powinien wyglądać kod jeśli ma mi sie pojawić postać z poprzedniej misji?? bo coś nie dziala to co czytałem w temacie scyzora chyba, przy kompilacji wykrywa że ''nadol'' to error...(w poprzedniej misji bylo zapisane savecharacters...
Posted: Mon Jan 15, 2007 4:04 pm
by Radzio
w poprzedniej misji:
w nowej:
tyle ze ta nowa misja musi byc zaladowana po zapisie tej starej wiec najpierw musisz miec save'a z poprzedniej by ta druga sie zaladowala poprawnie
temat
Posted: Tue Jan 16, 2007 10:29 pm
by NaDoL
Wszystko działa xD teraz mam kolejne pytanie;p
Jak powinien wyglądać kod jeżeli po zbudowaniu 6 pojazdów pojawi się taka ''ramka'' czerwona i jak sie tam wejdzie wszystkimi ludzmi w pojeździe to misja się skończy...??
Posted: Wed Jan 17, 2007 4:35 pm
by Radzio
Code: Select all
every 0$1 trigger FilterAllUnits([[f_type,2],[f_side,1]])>=6 do
begin
SetAreaMapShow(twojaarea,1);
end;
Code: Select all
every 0$1 trigger FilterUnitsInArea(twojaarea,[[f_type,2],[f_side,1]])>=6 and FilterUnitsInArea(twojaarea,[[f_type,1],[f_side,1]])>=6 do
begin
//kod na zakonczenie, ktorego juz tu nie napisze bo mysle ze go znasz
end;
twojaarea to nazwa tej arei, wokol ktorej pojawi sie ramka
temat
Posted: Thu Jan 18, 2007 4:03 pm
by NaDoL
No spoko z tym że jest mały w tym problem, bo jeżeli postacie są w pojazdach nie kończy misji, dopiero jak wyjdą z pojazdu wyswietla koniec...tj medale wiadomo...
Posted: Thu Jan 18, 2007 5:24 pm
by Radzio
Code: Select all
every 0$1 trigger FilterUnitsInArea(twojaarea,[[f_type,2],[f_side,1]])>=6 do
begin
//kod na zakonczenie, ktorego juz tu nie napisze bo mysle ze go znasz
end;
sprobuj to
temat
Posted: Fri Jan 19, 2007 5:36 pm
by NaDoL
Ok działa. A co dodać do kodu ''ataku'' jeżeli chce aby ten sam atak powtarzał sie co 5 min np. a nie tylko raz jak sie da:
every 5$0 do
Posted: Fri Jan 19, 2007 5:38 pm
by Radzio
wpisz tak:
Code: Select all
every 5$0 do
begin
//kod ataku
enable;
end;
temat
Posted: Sat Jan 20, 2007 10:25 am
by NaDoL
A mam pytanie jeszcze male, jaka komenda powinna byc żeby to co się pojawi atakwoało moja bazę, bo ten
ComAttackUnit([odzialy],FilterAllUnits([f_side,1]));
nie działa za bardzo(porposu jak się pojawią to stoją)...a GoToArea jest troche malo inteligentne ze tak powiem...jest coś jeszcze?? a moze ten 1 jest zły?
Posted: Sat Jan 20, 2007 10:45 am
by Radzio
jest taki fajny kod:
gdzie x i y to pozycje na mapie (najezdzajac na wybrany hex widac jego wartosci x i y po lewej stronie ekranu) najlepiej zeby byly one gdzies na srodku bazy albo na jej koncu (chyba da to najwiekszy realizm), ogolnie kod ten polega na tym ze wybrane jednostki beda zdazaly do tego hexu, jednakze w przeciwienstwie do zwyklego przemieszczenia beda sie zatrzymywac gdy tylko ujrza wroga, a kontynuowac trase beda po zniszczeniu wrogow w polu widzenia
temat
Posted: Sat Jan 20, 2007 10:57 pm
by NaDoL
Ok działa. nastepne pytanie xD
Jak zrobić żeby po misji pokazywało się takie okno z wyborem postacie, i że one są w następnej misji? i żeby przechodziło z jednej mapy do 2 ''po czymś tam'' bez poakzywania tego okno ''wygrales'' etc tylko chodzi o płynne przejście, coś jak w misji USA gdzie z Alphy macmilan przechodził do budowy Epsilonu...
I jak ta grafe podczas loadingu zmienić (to co taka mapka jest jakby)??
A i jak dac żeby nad skaldem pisalo np. Nadol ? tak jak w multi?
Posted: Sun Jan 21, 2007 9:09 am
by Radzio
1) kod na zmiane mapy:
zmieni mape na mape z tym samym numerkiem, tyle ze bedzie miala dopisek _cont
2) co do postaci najlepiej zapisac je w tej poprzedniej misji jako zestaw postaci (poprzedniej czyli nie tej przed _cont tylko tej jeszcze poprzedniej) poleceniem:
Code: Select all
SaveCharacters(FilterAllUnits([[f_side,1],[f_type,1],[f_alive]]),'zestaw');
teraz w tej nowej misji wprowadzic sobie jakos zmienna dla zestawu np. zest1
i w kodzie dalszym wpisac
Code: Select all
zest1=CreateCharacterSet('zestaw');
nastepnie menu wyboru:
Code: Select all
CharacterSelection('naglowek',min,max,zest1,[klasy])
gdzie naglowek to identyfikator do tekstu w pliku Texts.txt (lub TxtNR.wri) do tekstu np. Wybierz sobie tyle i tyle postaci, blablabla... (nie wiem jak to wprowadzic) min to minimalna ilosc ludzi, max chyba tlumaczyc nie musze, zest1 to nasz zestaw, [klasy] to klasy dostepne na jakie postacie mozna zamienic np. 4 podstawowe klasy to bedzie [1,2,3,4] a same specjalne klasy [5,8,9] mozesz takze ustalic ilu ludzi moze miec dana klase np. [1,2,3,[4,1]] ustalilem ze bedzie mozna miec tylko 1 naukowca
3) grafa jest w folderze Interface\LoadImgs w data1.owp , zobacz sam jak to jest ulozone a zrozumiesz (pliki sa w formacie targa jak nie masz jakiegos programu graficznego z takim formatem to uzyj irfanview)
4) poczytaj mojego tutka:
http://www.owsupport.com/?sect=tutorial ... asename_pl
tylko pod zadnym pozorem NIE PRZEPISUJ ZADNYCH TEKSTOW ZA // ANI TEZ SAMYCH // (mialem juz na to skargi bo ludzie nie wiedzieli ze to komentarze

)
temat
Posted: Sun Jan 21, 2007 11:44 am
by NaDoL
Spoko wiem ^^ ot tera mam następne ptanie;p
Jaki fragment jest kodu jeżeli po oswojeniu 3 małpoludów-inżynierów pojawia sie coś tam (cel albo dialog wiadomo)? i jaki będzie kod jezeli chce aby np. Nadol po skończeniu dialogu wszedł do pojazdu który stoi obok(id pojazdu- pojazd) i odjechał nim do area01 ??
Posted: Sun Jan 21, 2007 12:20 pm
by Radzio
1) kod:
Code: Select all
every 0$1 trigger FilterAllUnits([[f_side,1],[f_class,16])>=3 do
begin
//blablabla
end;
2) kod:
Code: Select all
// skonczyl sie dialog
ComEnterUnit(Nadol,pojazd);
AddComMoveToArea(Nadol,area01);
// Nadol pojechal w swiat :D