У меня есть NevMeshSurface с врагами. У всех врагов есть НевМешАгент.
Когда игрок умирает, все враги должны быть уничтожены:
GameObject[] enemies = GameObject.FindGameObjectsWithTag("Enemy");
foreach (GameObject enemy in enemies)
{
Destroy(enemy.gameObject);
}
Когда это происходит, я получаю ошибку:
«SetDestination» может вызываться только на активном агенте, который был
размещены на НавМеш.
Это сценарий врага:
public GameObject player;
NavMeshAgent agent;
void Start()
{
agent = GetComponent<NavMeshAgent>();
agent.Warp(transform.position);
}
void Update()
{
if (player.gameObject != null && gameObject.activeSelf)
{
agent.SetDestination(player.transform.position);
}
}
NevMeshSurface запекается, когда появляются враги.
И это прекрасно работает, пока игрок не умрет, тогда появляется ошибка, и я не знаю, как это решить.