Единство - это игра, удаляющая снаряды - PullRequest
0 голосов
/ 06 июня 2018

В моей игре Unity3D я пытаюсь создать ракету, которая взорвется, когда ее триггерный коллайдер ударит по карте или игроку, уничтожив снаряд и создав его в моем префабе взрыва.Но с этим фрагментом кода моя земля продолжает исчезать, когда я играю в игру.Ничто не касается самолета.Вот мой код.

void OnTriggerEnter (Collider c) 
{
    GameObject explosion = Instantiate (Explosion, c.transform.position, Quaternion.identity);
    if (c.CompareTag("Projectile"))
    {
        Destroy (c.gameObject);
    }
    StartCoroutine(Coroutine());
    Destroy (explosion);
}

1 Ответ

0 голосов
/ 06 июня 2018

Взрыв удаляется сразу после запуска сопрограммы, он не ждет, пока сопрограмма завершит работу, поэтому удаление необходимо перенести в конец сопрограммы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...