Esempio n. 1
0
 public void DoActions(_HunterStateController controller)
 {
     for (int i = 0; i < actions.Length; i++)
     {
         actions [i].Act(controller);
     }
 }
 public void CatchTo(_HunterStateController controller)
 {
     if (controller.character.CurrentState == CharacterState.Normal)
     {
         controller.navMeshAgent.destination = controller.underInvokeList [0].position;
         controller.navMeshAgent.isStopped   = false;
     }
 }
 public bool Alarm(_HunterStateController controller)
 {
     if (controller.underInvokeList.Count > 0)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Esempio n. 4
0
 private void CheckTransitions(_HunterStateController controller)
 {
     for (int i = 0; i < transitions.Length; i++)
     {
         bool decisionSucceed = transitions [i].decision.Decide(controller);
         if (decisionSucceed)
         {
             controller.TransitionToState(transitions [i].trueState);
         }
         else
         {
             controller.TransitionToState(transitions [i].falseState);
         }
     }
 }
Esempio n. 5
0
 public abstract bool Decide(_HunterStateController controller);
Esempio n. 6
0
 public void UpdateStates(_HunterStateController controller)
 {
     DoActions(controller);
     CheckTransitions(controller);
 }
Esempio n. 7
0
 public abstract void Act(_HunterStateController controller);
 public override void Act(_HunterStateController controller)
 {
     CatchTo(controller);
 }
Esempio n. 9
0
 public override void Act(_HunterStateController controller)
 {
     Wonder(controller);
 }
Esempio n. 10
0
 public void Wonder(_HunterStateController controller)
 {
     controller.navMeshAgent.destination = controller.wonderPoint;
 }
    public override bool Decide(_HunterStateController controller)
    {
        bool alarms = Alarm(controller);

        return(alarms);
    }