예제 #1
0
 /// <summary>
 /// 状态机初始化
 /// </summary>
 private void ConstructFSM()
 {
     if (this is EntityMonster)
     {
         fsm.AddFSMState(FSMStateType.Patroling, new PatrolBase(this));
         fsm.AddFSMState(FSMStateType.Chasing, new ChaseBase(this));
         fsm.AddFSMState(FSMStateType.Attacking, new AttackBase(this));
         fsm.AddFSMState(FSMStateType.Dead, new DeadBase(this));
         fsm.AddFSMState(FSMStateType.Hit, new StateHit(this));
         fsm.AddFSMState(FSMStateType.Idle, new StateIdle(this));
     }
     else if (this is EntityMyself)
     {
         fsm.AddFSMState(FSMStateType.Idle, new StateIdle(this));
         fsm.AddFSMState(FSMStateType.Hit, new StateHit(this));
         fsm.AddFSMState(FSMStateType.Dead, new DeadBase(this));
     }
 }