Atak Jednostek oraz wykonanie misji- MOD

Tematy zbędne, ale zbyt dobre by je usunąć znajdują się tutaj.
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

hehe, wszystko sie da...
wiec tak:
1 problem: kod bedzie taki

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

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?):

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

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:

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

InGameOn;
na odblokowanie:

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

InGameOff;
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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...
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

w poprzedniej misji:

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

SaveCharacters(Nadol,'Nadol');
w nowej:

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

Nadol=CreateCharacter('Nadol');
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
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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...??
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

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

every 0$1 trigger FilterAllUnits([[f_type,2],[f_side,1]])>=6 do
begin
SetAreaMapShow(twojaarea,1);
end;

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

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
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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...
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

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

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
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

wpisz tak:

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

every 5$0 do
begin
//kod ataku
enable;
end;
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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?
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

jest taki fajny kod:

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

ComAgressiveMove([oddzialy],x,y);
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
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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?
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

1) kod na zmiane mapy:

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

ChangeMap('1','%_cont');
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:

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

SaveCharacters(FilterAllUnits([[f_side,1],[f_type,1],[f_alive]]),'zestaw');
teraz w tej nowej misji wprowadzic sobie jakos zmienna dla zestawu np. zest1

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

EXPORT zest1;
i w kodzie dalszym wpisac

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

zest1=CreateCharacterSet('zestaw');
nastepnie menu wyboru:

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

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 :? )
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Příspěvky: 379
Registrován: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontaktovat uživatele:

temat

Сообщение od 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 ??
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Příspěvky: 2898
Registrován: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение od Radzio »

1) kod:

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

every 0$1 trigger FilterAllUnits([[f_side,1],[f_class,16])>=3 do
begin
//blablabla
end;
2) kod:

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

// skonczyl sie dialog
ComEnterUnit(Nadol,pojazd);
AddComMoveToArea(Nadol,area01);
// Nadol pojechal w swiat :D
Zamčeno