void AcquireTarget() { if (target) { currentTargets.Remove(target); target = null; } MoveSwarm[] agents = FindObjectsOfType <MoveSwarm>(); if (agents.Length > 0) { foreach (MoveSwarm ag in agents) { if (!currentTargets.Contains(ag) && (!target || ag.GetHashCode() < target.GetHashCode())) { target = ag; } } if (target) { agent.destination = target.transform.position; currentTargets.Add(target); } } }
void AcquireTarget() { target = null; MoveSwarm[] agents = FindObjectsOfType <MoveSwarm>(); if (agents.Length > 0) { target = agents[Mathf.FloorToInt(Random.value * agents.Length) % agents.Length]; agent.destination = target.transform.position; } }