У меня был быстрый вопрос.
У меня есть список объектов, к которым регулярно обращается другой скрипт. То, что я хочу сделать, - это очистить список и уничтожить все объекты в нем. Вот код, который я использую для этого:
FoodTargets - это имя моего списка...
destroycounter = FoodTargets.Count;
for (destroycounter = 0; destroycounter < FoodTargets.Count; destroycounter++)
{
Destroy(FoodTargets[destroycounter]);
FoodTargets.RemoveAt(destroycounter);
}
Это возвращает ошибку:
Невозможно уничтожить трансформацию "". если вы хотите уничтожить игровой объект, то вместо этого вызовите destroy на игровой объект...
Я занимаюсь этим часами, я просто хочу знать, какую строку кода я могу использовать для уничтожения встроенного сборника внутри списка... ИЛИ, если это возможно, какой код я использую для уничтожения всех экземпляров, созданных в списке. Заранее спасибо, ваша помощь будет высоко оценена.
Используйте тот факт, что каждое преобразование указывает на его GameObject. Вы должны это сделать, потому что Destroy() принимает параметр GameObject в качестве параметра.
Destroy(transformReference.gameObject);
В вашем коде это будет выглядеть так:
Destroy(FoodTargets[destroycounter].gameObject);
Здесь вы можете узнать больше о свойствах внутри Transform.