IEnumerator RunFollowPath(Vector3[] path) { for (int i = 0; i < path.Length;) { Vector3 toTarget = PPPUtil.ToTargetVecXZ(transform.position, path[i]); if (toTarget.magnitude > .05f) { rb.velocity = toTarget.normalized * moveSpeed; } else { i++; } yield return(null); } PerformNextTask(); }