Задать вопрос
@DstivjTS

Как хранит gameObject-ы, что бы при уничтожении удалялись?

Требуется хранит список врагов и при уничтожение врага удалить его из списка (автоматом/ручном). Как лучше его хранить? Я сделал через List enemes, но при уничтожение врага объект не удаляется со списка, пробовал удалить через enemes.Remove(item) - выдает ошибку. Как лучше реализовать?
  • Вопрос задан
  • 252 просмотра
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Решения вопроса 1
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Делать нужно так:
private List<Enemy> enemies = new List<Enemy>();

private void DestroyEnemy(Enemy enemy)
{
    enemies.Remove(enemy);
    Destroy(enemy.gameObject);
}

Если сначала уничтожать gameObject, а потом пытаться выкинуть из списка, то может случиться нулреф из-за того, что компонент уже уничтожен.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
EreminD
@EreminD
Кое-что умею
Как-то половину про C# написали, половину про игру:
Я сделал через List enemes, но при уничтожение врага объект не удаляется со списка

Вот это что значит?

Как враг "уничтожается" из списка - покажите метод уничтожения?
Какую ошибку выдает?
Как вы понимаете, что объект не удаляется?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы