void OnUpdateObserve() { if (currTask) { if (!currNode) { List <ATNode> visableNode = currTask.visiableNodes; if (visableNode.Count <= 0) { } else { // TODO: Random or sort foreach (ATNode node in visableNode) { currNode = node; break; } } } else { if (currNode.Observe(observation * Time.deltaTime)) { transform.position = currNode.transform.position + new Vector3(0, 0, -1); stateMachine.SetNextState(State.Action); } else { } } } }