/// <summary> /// 执行转换,外部调用关键方法。 /// </summary> /// <param name="trans">Trans.</param> public void PerformTransition(EBehaviourTransition trans, object param = null) { if (!CanTransition(trans)) { return; } _CurStateID = _CurState.GetOutputState(trans); foreach (BehaviourState state in _States) { if (state.ID == _CurStateID) { _CurState.OnExit(); _CurState = state; _CurState.OnEnterBefore(); _CurState.OnEnter(param); break; } } }