public override bool CheckProceduralPrecondition(GameObject _agent) { ChopableTree[] animals = FindObjectsOfType <ChopableTree>(); ChopableTree closest = null; float dist = 0; foreach (ChopableTree a in animals) { if (a.isFound) { if (closest == null) { closest = a; dist = Vector3.Distance(transform.position, a.transform.position); } else { float dist2 = Vector3.Distance(transform.position, a.transform.position); if (dist > dist2) { closest = a; dist = dist2; } } } } if (closest != null) { targetTree = closest; target = targetTree.gameObject; } return(closest != null); }
public override void Reset() { chopped = false; targetTree = null; startTime = 0; }