Skrypt niszczący obiekt rodzica.

Programowanie w Unity.

Skrypt niszczący obiekt rodzica.

Postprzez koyoo » 11 Gru 2018, 01:11

Hej hej!
Otóż tworze mam skrypt który spawnuje co jakiś czas przeciwnika wyciągając go z tablicy.
Przeciwników mam 10 i losowo co 5 sekund spawnuje jednego.
Chciałbym zrobić następny skrypt automatycznej śmierci.
Myśle, żeby do GameObject Przeciwnika dodać skrypt, który po upływie 20 sekund zniszczy obiekt matczyny, jednak natknąłem się na pewien problem. Otóż nie wiem jak to zrobić, żeby niszczył się ten konkretny obiekt, a nie wszystkie jego klony.
Chodzi o to, że jeżeli w te 20 sekund wylosuje 3 razy ten sam model przeciwnika (ten sam GameObject z talblicy) to zniszczeniu potem ulegną wszystkie jego kopie, a tego właśnie nie chce.. Jakaś rada, pomoc, ktoś miał podobny problem?
koyoo
 
Posty: 3
Rejestracja: 13 Cze 2018, 04:06
Has thanked: 0 time
Been thanked: 0 time

Re: Skrypt niszczący obiekt rodzica.

Postprzez Hostur » 11 Gru 2018, 11:06

Do instantiate dajesz GameObject z tablicy ale sama funkcja instantiate zwraca Ci nową referencję, do zespawnowanego obiektu. Ważne, żebyś NIE robił czegoś w stylu

Kod: Zaznacz wszystko
enemies[randomedIndex] = Instantiate(enemies[randomedIndex]);


Jeśli przeciwnicy nie mają jakiegoś wspólnego roota w hierarchii to wystarczy Ci
Kod: Zaznacz wszystko
Destroy(transform.root.gameObject);


Jeśli Ci to nie działa to coś przekombinowałeś, albo parentujesz do tego samego obiektu albo robisz jakieś dziwne rzeczy z referencjami.
Hostur
 
Posty: 682
Rejestracja: 05 Sie 2015, 07:36
Has thanked: 0 time
Been thanked: 0 time


Wróć do Skrypty

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 18 gości