public VectorAndNum Search(List <TowerShape> pool, Enemy enemy) { VectorAndNum r = new VectorAndNum(); if (pool.Count == 0) { r.hasPool = 2; r.num = -1; return(r); } float min = 199000; float distance = 1000; r.num = 0; Vector3 v3 = new Vector3(); for (int i = 0; i < pool.Count; i++) { distance = Vector3.Distance(pool[i].transform.localPosition, enemy.transform.localPosition); if (distance < min) { min = distance; v3 = pool[i].transform.localPosition; r.num = i; } } r.point = v3; return(r); }
public void SearchAndGo(Enemy enemy) { if (enemy.isLock) { return; } else { VectorAndNum se = new VectorAndNum(); se = Search(towerShapes, enemy); enemy.navMesh.SetDestination(se.point); //enemy.anim.SetInteger("CommonEnemy", 1); if (se.num < 0) { return; } } }