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); }