Skocz do zawartości

Punkty za zabicie grupy przeciwników


Adriann
Przejdź do rozwiązania Rozwiązane przez Konrad-GM,

Rekomendowane odpowiedzi

Uszanowanko

Mam taki drobny problem, tworzę obiekt który produkuje przeciwników grupkami(np fala 10ciu wrogów leci w dół) i chcę znaleźć sposób na wykrywanie tego że gracz zabił wszystkich z tego konkretnego oddziału. Takich oddziałów składających się z takich samych obiektów może być oczywiście kilka.
Macie pomysł jak najłatwiej do tego podejść?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Rozwiązanie

Cześć, najłatwiej byłoby po prostu dla każdej jednostki z oddziału "zapamiętać" z jakiego spawna pochodzą. Po prostu zrobić jakiś prosty licznik i sprawdzać, czy został on wyzerowany:

 

W obiekcie powiedzmy obj_spawn dodajesz zmienną w Create Event:

units_alive = 0;

 

Potem przy tworzeniu jednostki obj_unit nadać mu dodatkowo ID instancji obj_spawn jako "pochodzenie", np. w obiekcie obj_spawn w User Event 0 dać coś takiego:

// tworzymy instancje jednostki
var unit = instance_create(x, y, obj_unit);
unit.spawn_id = id;

// dodajemy jednostke do licznika
units_alive += 1;

 

A na koniec w obiekcie obj_unit w Destroy Event wystarczy dekrementować licznik powiązanej instancji obj_spawn:

spawn_id.units_alive -= 1;

 

Potem sprawdzenie ile jednostek pozostało żywych jest chyba oczywiste :)

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ę...