/// <summary> /// 默认状态初始化 /// </summary> private void DefaultInit() { defaultState = stateList.Find(p => p.stateID == defaultStateID); currentState = defaultState; currentStateID = defaultState.stateID; }
private void InitDefaultState() { defaultState = states.Find(s => s.StateID == defaultStateID); currentState = defaultState; currentState.EnterState(this); }
//切换状态 public void ChangeActiveState(FSMStateID stateID) { currentState.ExitState(this); currentState = stateID == FSMStateID.Default ? defaultState : states.Find(s => s.StateID == stateID); currentState.EnterState(this); }