public override State Transition() { // see target? if (!MobTools.CheckLOS(blackboard.eyes.position, blackboard.target.gameObject, blackboard.eyeMask)) { // seek return(blackboard.seekState); } return(this); }
public override State Transition() { // see target? if (MobTools.CheckLOS(blackboard.eyes.position, blackboard.target.gameObject, blackboard.eyeMask)) { // engage return(blackboard.engageState); } // out of range? if (!MobTools.CheckDistance(blackboard.eyes.position, blackboard.target.transform.position, blackboard.seekRange)) { // idle return(blackboard.idleState); } return(this); }