Atak Jednostek oraz wykonanie misji- MOD

Tematy zbędne, ale zbyt dobre by je usunąć znajdują się tutaj.
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

A i zapomniałem, jeszcze potrzebuje fragemntu :
Jeżeli wybuduje radar to sie wyswietlą 3 medale jeżeli nie to 2 , to jak to bedzie w sailu?? (i texts)?
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

kod na medal:

Kod: Zaznacz cały

//gdzies tam misja sie konczy, dajesz te dwa pozostale medale
if FilterAllUnits([[f_side,1],[f_weapon,11],[f_bweapon,11]])>=1 then
AddMedal('radarek',1)
else
AddMedal('radarek,-1);
a w texts.txt:

Kod: Zaznacz cały

* radarek
+ Zbudowałeś radar.
- Nie zbudowałeś radaru.
*
Awatar użytkownika
NNPlaya
Community Veteran
Community Veteran
Mensajes: 372
Registrado: sob paź 14, 2006 4:52 pm
Lokalizacja: Tuszyn, Polska
Contactar:

Post por NNPlaya »

Radzio pisze:wpisz tak:

Kod: Zaznacz cały

every 5$0 do
begin
//kod ataku
enable;
end;
err... Jeśli tak pisze się kod, to trzeba pamiętać o przywróceniu jednostek do życia (przecież po pierwszym ataku są zabici przez gracza). Trzeba więc kod tworzący ludzi i pojazy umieścić od razu po Starting

Kod: Zaznacz cały

Starting
Begin
<Jakiś kod>
<Instrukcje tworzenia jednostek, czyli CreateHuman, CreateVehicle itd.>
end;

every 5$0 do 
Begin
SetLives(nazwa_jednostki,1000); //1000, czyli 100% życia, stosujesz także do pojazdów
<Instrukcje PlaceUnitArea, PlaceHumanInUnit(do wsadzania ludzi do pojazdów i budynków)>
ComAgressiveMove([atakujące_jednostki],x,y);
end;
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

nie, po prostu zostaliby utworzeni na nowo, teraz twoj kod spowoduje zapewne, ze beda wciaz tacy sami (tzn. te same geby beda mieli) bo beda utworzeni tylko raz, dlatego tez powinni byc tworzeni za kazdym razem, a nie tylko "odradzani"
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

To z eneble działa i raczej jest bardziej praktyczne bo krótsze;p oczywiście jeśli dobrze jest napisany kod ataku:D

Tylko że to z radarem nie działa...pisze cały czas( jak się zbuduje radar) ''Nie zbudowałęs radaru'' i medalu sie nie dostaje...
Kod w Sailu:
AddMedal('malpa',1);
AddMedal('ludzie',1);
if FilterAllUnits([[f_side,1],[f_weapon,11],[f_bweapon,11]])>=1 then
Begin
AddMedal('radar',1)
end
else
Begin
AddMedal('radar',-1);
end;
GiveMedals('MAIN');
YouWin;
end;
of course to tylko fragment
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

zrobilem gafe (kod mowi: daj jeden medal jesli na mapie znajdziesz 1 budynko-pojazd z radarem) a powinno byc to lub to a nie dwa w jednym :lol:
poprawny kod

Kod: Zaznacz cały

if FilterAllUnits([[f_side,1],[f_weapon,11]])>=1 or FilterAllUnits([[f_side,1],[f_bweapon,11]])>=1 then
AddMedal('radarek',1)
else
AddMedal('radarek,-1);
upewnij sie tylko ze identyfikatory w texts.txt i w SAILu sa takie same a powinno byc OK 8)
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

Spoko ID jest radar.
A jakie kody będą gdy chce aby coś tam działo sie jak wydobędzie sie 200 kryształków syb.
I co dać jesli np. ktoras z postaci (np. ppl1,ppl2,pll3) dojdzie do area01 to baza o kolorze ''cyan'' zmienia sie na niebieska? chyba trzeba dać ID budynkom i sedside?
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

1) po prostu z uzyciem every:

Kod: Zaznacz cały

every 0$1 GetResourceType(id_bazy,3)>=200 do
begin
//blablabla
end;
ps: id_bazy moze byc identyfikatorem do dowolnego budynku w danej bazie (nie tylko skladu)

2) tak trzeba dac id i uzyc setside, i oczywiscie wszystko przez every

Kod: Zaznacz cały

every 0$1 trigger IsInArea(ppl1,area01) or IsInArea(ppl2,area01) or IsInArea(ppl3,area01) do
begin
baza=[identyfikatory wszystkich budynkow napisane po przecinkach];
SetSide(baza,1);
end;
oczywiscie wczesniej ustawic wszelkie id i zdefiniowac ident. baza z uzyciem var lub export

ps: mozesz takze uzyc zamiast poszczegolnych identyfikatorow polecenia FilterAllUnits, wtedy kod dla "baza" bedzie taki:

Kod: Zaznacz cały

baza=FilterAllUnits([[f_side,4],[f_type,3]]);
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

To z Sybem nie działa, wogóle nie odczytuje frazy ''GetResourceType'' jak sie doda trigger to wtedy dopiero compiluje, ale nie działa to w grze...tj po wydobyciu 200k nic się nie dzieje...
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

heh, to mialo dzialac, a co do trigger to zaponialem o nim po prostu (za szybko pisalem i gafa :P )
mam nadzieje ze ten drugi kod przynajmniej dziala

EDIT: wlasnie przetestowalem ten kod, jako identyfikator uzylem identyfikatora skladu, numer zostal na 3 i po wydobyciu 200 sybkow, stalo sie to co chcialem (zmienilo kolor skladowi na zolty poprzez uzycie setside), uzylem tego takze z samodestrukcja, usunieciem jednostki itd. wszystko dziala, chyba ze zle masz ustawiony identyfikator i/lub zly kod wpisany do wykonania
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

Hmm coś mi nie idzie to:/ ale zastąpiłem trochę inaczej ten fragment gry;p (a kod po wydobyciu surowca był dobry bo po samym czasie działa, może dlatego że budynek jest ruski ale niebieski, nie wiem)
Ale mam jeszcze parę pytań, jak tworze jednostkę komputerową która ma mnie atakować to jak dać jej 8 lvl kompa, 3 lvl działa i 3lvl zwykłego techa??
I da się tak zrobić żeby gra sprawdzała co sekundę jakiś warunek (np. czy nadol jest w area01 to coś tam) ale dopiero po 30 min gry?
I jak postać przy savecharacters była naukowcem to co trzeba aby w następnej misji ona przy odtowrzeniu była zolnierzem? próbowałem wpisac uc_class_1 bodajże ale nadal jest nau...
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

1) takich indywidualnych poziomow nie da sie wprowadzic (wiem to na pewno), ale mozna ustawic opracowanie tych technologii dla danego koloru (ustawic odpowiednie technologie dla danego koloru na invented) oczywiscie pamietaj, ze np. 3 poziom komputeryzacji jest zalezny od 1 i 2 wiec je tez powinienes na invented ustawic
2) da sie, kod na poczatku misji:

Kod: Zaznacz cały

starting
begin
disable(01);
//gdzies dalszy kod na poczatek misji
end;
dalej w kodzie:

Kod: Zaznacz cały

every 30$0 do
enable(01);
jeszcze dalej (hehe):

Kod: Zaznacz cały

every 0$1 trigger IsInArea(Nadol,area01) MARKED 01 do
begin
//kodzik
end;
3) proscizna:

Kod: Zaznacz cały

//gdzies tam kod zaladowal POSTAC (jeszcze nie ma jej na mapie)
SetClass(POSTAC,1);
//teraz dopiero kod postawil jednostke na mapie
4 to numer klasy, postac nie musi byc jedna moze to byc tez zestaw postaci, wtedy uzyc trzeba kwadratowych nawiasow
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

ok gitara jak narazie, ale potrzebuje jeszcze fragmentu jak misja ma się kończyć po opracowaniu wszystkich dostępnych technologi? I przy okazji - jak można zapisać budnyki na mapie tj wygląd bazy aby go wczytało w którejś z kolei misji? ale żeby je rozstawiło w tych samych miejscach?( z tym że one by były zależne od tego jak ktoś wcześniej zbuduje i ile...) da się tak? bo chyba jakby fillterallunits i savecharacters później reward i placeunitXY to by postawiło wszystko w jednym miejscu...
Obrazek
Radzio
Site Administrator
Site Administrator
Poland
Mensajes: 2898
Registrado: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post por Radzio »

tak, postawilo (a raczej chcialo by postawic) w jednym miejscu, taki odpowiedni kod byl uzyty za pewne w obu misjach z baza Gamma (taki sam rozklad tyle ze troche zmian itd.)
Awatar użytkownika
NaDoL
Community Veteran
Community Veteran
Mensajes: 379
Registrado: śr kwie 12, 2006 7:43 pm
Lokalizacja: Poland
Contactar:

temat

Post por NaDoL »

No, a co z technologiami?? tj kod na to ze po opracowaniu wszystkich dostępnych, lub wybranych techów, cos tam sie zrobi?
Obrazek
Cerrado