Skocz do zawartości

Skrypty


Rekomendowane odpowiedzi

Hej,

Czy da się zrobić tak aby niektóre obiekty miały grupę np. czołgi i aby np. obj_pocisk przy kolizji z obiektem z grupy czołgi ten obiekt z grupy wykonał akcję (np Live -=10)??

Nie musiałbym dodawać po kilkadziesiąt kolizji dla każdej broni z każdym obiektem....

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

A spróbowałeś czy sie da ?

Jeżeli to dobrze rozplanujesz, oczywiście, że się da. Pamiętaj tylko, że jeżeli ustawisz w obiekcie rodzicu jakąś akcję (np. kolizję), to wstawienie czegokolwiek w obiekcie - dziecku w tym zdarzeniu, anuluje tamte. Zatem najlepiej było by u każdego przeciwnika dać w create np. zmienną utrata_energii, która ustalała by ile energii tracić a w zdarzeniu kolizji obiektu rodzica dać health-=utrata_energii (oczywiście rodzic też musi mieć zmienną utrata_energi, najlepiej ustawioną na 0).

Odnośnik do komentarza
Udostępnij na innych stronach

Chyba źle się zrozumieliśmy :/ albo to ja źle rozumiem.

Chodziło mi o to abym mógł nadać obiektom daną grupę i posługiwać się nią jak obiektem. Inaczej: czy mogę wykrywać kolizję z zmienną? tzn. z obiektami o danej zmiennej? np. w obiekcie pocisk kolizja(czołgi).... a nie tworzyć rodziców.

Odnośnik do komentarza
Udostępnij na innych stronach

dajmy na to ze masz 100 obiektow czolgi: czolg1, czolg2 itd...

robisz obiekt czolg_par

wszystkim czolgom od 1 do 100 w parrent ustawiasz czolg_par

 

i teraz gdy ustalasz kolizje pocisku z czolgami nie ustawiasz osobnych kolizji ze wszystkimi obiektami czolg 1-100 tylko dajesz event kolizja z czolg_par...

Odnośnik do komentarza
Udostępnij na innych stronach

nie dam glowy ale chyba da sie zrobic parrenty w parrentach:

wrogowie_par jest parrentem czolgi_par, czolgi_par jest parrentem wszystkich czolgow

ale tez

wrogowie_par jest parrentem dla piechota_par ktory jest parrentem dla wszystkich obiektow BP_Piechota

Odnośnik do komentarza
Udostępnij na innych stronach

W sumie ten problem polega tylko na tym że nie wiem jak zrobić aby ally tego kto stworzył pocisk rozróżniał z tym który obrywa.

miałem zależność w pocisku

GML
if ally_creator <> ally_dmg Live -=10

 

Ale nie mogę zrobić tak aby ally_creator pobierał z tego co go stworzył a ally_dmg od tego z którym koliduje

 

Tutaj najwyżej pech ale jak zrobić inteligencję [w późniejszych rts-ah] i kontrole, bez tworzenia kopii dla każdej z drużyny....

Odnośnik do komentarza
Udostępnij na innych stronach

nie bardzo wiem o co ci chodzi...

chcesz zrobic jeden obiekt pocisk ktory bedzie obslogiwal wszystkie obiekty strzelajace, roznych typow i roznych stron konfliktu?

 

mozesz chyba zrobic cos takiego:

 

tworzenie pocisku:

GML
strzelam=instance_create(x,y,obj_pocisk); // zmienna "strzelam" przyjmuje wartosc id nowo utworzonego objektu obj_pocisk

strzelam.kto_mnie_wystrzelil=1 // tworzy dla obiektu o id przechowywanym w "strzelam" zmienna "kto_mnie_wystrzelil" i przypisuje jej jakas wartosc dzieki ktorej bedzie mozna sprawdzic kto utworzyl ten obiekt

 

mozna by w ten sposob sprawdzac kolizje obiektu obj_pocisk najpierw sprawdzajac zmienna kto_mnie_wystrzelil switchem czy if-ami

 

nie wiem czy o to ci chodzi

 

ja jestem jednak przeciw komplikowaniu tego co proste, nie lepiej kazdej grupie obiektow robic osobne pociski?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...