Exemplo n.º 1
0
 /// <summary>
 /// 添加状态
 /// </summary>
 /// <param name="state">需要管理的状态</param>
 public void AddState(FSM_MonsterS state)
 {
     if (currentstate == null)
     {
         currentstate = state;
         states.Add(state.whichstate, state);
     }
     else
     {
         states.Add(state.whichstate, state);
     }
 }
Exemplo n.º 2
0
    public void PerformTransition(Transition trans)
    {
        if (trans == Transition.NullTrans)
        {
            return;
        }
        Monster_State targetstate = currentstate.GetMonster_State(trans);

        if (states.ContainsKey(targetstate) == false)
        {
            return;
        }
        FSM_MonsterS Targetstate = states[targetstate];

        /*currentstate.DowhileStart();
         * currentstate.DowhileEnd();*/
        currentstate = Targetstate;
    }