public void UpdateFsm() { FsmTransition transition = _current.VerifyTransition(); if (transition != null) { _current.Exit(); transition.Fire(); _current = _current.NextState(transition); _current.Enter(); } else { _current.Stay(); } }
public void AddTransition(FsmTransition transition, FsmState target) { links[transition] = target; }
public FsmState NextState(FsmTransition transition) { return(links[transition]); }