void CheckEvader() { if (evdPoints.Count == 2) { EvaderPoint removePoint = null; float minDis = 0; foreach (GameObject po in evdPoints) { EvaderPoint evdPoi = po.GetComponent <EvaderPoint>(); if (evdPoi.getCheck() == false) { if (minDis >= evdPoi.GetDistance()) { Debug.Log("Min Distance : " + evdPoi.GetDistance()); minDis = evdPoi.GetDistance(); removePoint = evdPoi; } if (evdPoi.isDeadEnd()) { Debug.Log("Dead End!!!"); evdPoints.Remove(po); Destroy(evdPoi.gameObject); } } } Destroy(removePoint.gameObject); } if (evdPoints.Count == 1) { isColEvd = true; } }
void StartColEvade() { GameObject unit1 = Instantiate(evaderGAMEOBJ, transform.position + (transform.up * 2) - (transform.right * 2), transform.rotation) as GameObject; EvaderPoint leftEvd = unit1.GetComponent <EvaderPoint>(); leftEvd.StartCheck(colCheckDistance, EvaderPoint.EvaderDirection.Left); evdPoints.Add(unit1); GameObject unit2 = Instantiate(evaderGAMEOBJ, transform.position + (transform.up * 2) + (transform.right * 2), transform.rotation) as GameObject; EvaderPoint rightEvd = unit1.GetComponent <EvaderPoint>(); leftEvd.StartCheck(colCheckDistance, EvaderPoint.EvaderDirection.Right); evdPoints.Add(unit2); isColEvd = true; }