Здесь я работаю над фрагментом кода, в котором я создаю x клонов GameObject (префаба). Есть несколько автомобилей, которые создаются случайным образом для имитации движения, к каждому клону затем прикрепляются несколько скриптов; один для управления своим ИИ, один для управления столкновениями, и я хочу, чтобы третий уничтожил машину, когда она «за пределами поля» или слишком далеко от игры, чтобы мы ее больше не видели.
Проблема в том, что я понятия не имею, как получить доступ к GameObject, к которому в настоящее время прикреплен скрипт. Мне удалось найти любой GameObject, с которым я сталкиваюсь, из OnCollisionEnter2D, но я не нашел способа найти «себя» или «себя».
Я знаю, что у меня есть жесткое тело2D, так как я могу управлять автомобилем без создания экземпляров или добавления каких-либо компонентов.
function FixedUpdate ()
{
// Controls the velocity of the car
rigidbody2D.angularVelocity = 0;
}
Есть какие-нибудь подсказки о том, как я могу удалить вышеупомянутый GameObject (включая жесткое тело2D) и остановить / деактивировать все прикрепленные к нему скрипты?
Я думаю, что могу уничтожить GameObject (и все, что к нему прикреплено) с помощью «Destroy (GameObject)», просто не знаю, как правильно установить GameObject.
Изменить: Кроме того, было бы очень полезно знать имя префаба, используемого для этого экземпляра GameObject (разные префабы используют одни и те же скрипты).