public void TransitionToState(FSMState nextState) { if (_currentState != null) { _currentState.Exit(); } nextState.Enter(); _currentState = nextState; }
public void SetTransition(Transition tran, params object[] args) { if (tran == Transition.NULL || curSate == null) { return; } StateID id = curSate.GetState(tran); if (!states.ContainsKey(id)) { return; } curSate.Exit(); curSate = states[id]; curSate.Enter(args); }