public override void Perform(StateChangeArgs stateChangeDetails) { mStateChangeDetails = stateChangeDetails; CreateTexture(); mStateChangeDetails.StartState.RaisePreExitEvent(mStateChangeDetails); StartCoroutine(FadeOutScreen()); }
public void RaisePostExitEvent(StateChangeArgs stateChangeDetails) { EventDispatcher.DispatchEvent(new StatePostExitEvent(stateChangeDetails)); if (base.gameObject != null) { base.gameObject.SetActive(value: false); } }
public void RaisePreEnterEvent(StateChangeArgs stateChangeDetails) { if (base.gameObject != null) { base.gameObject.SetActive(value: true); } EventDispatcher.DispatchEvent(new StatePreEnterEvent(stateChangeDetails)); }
public override void Perform(StateChangeArgs stateChangeDetails) { mStateChangeDetails = stateChangeDetails; mStateChangeDetails.StartState.RaisePreExitEvent(stateChangeDetails); mStateChangeDetails.StartState.RaiseExitEvent(stateChangeDetails); mStateChangeDetails.StartState.RaisePostExitEvent(stateChangeDetails); InitializerComponent safeComponent = base.gameObject.GetSafeComponent <InitializerComponent>(); if (safeComponent != null) { Logger.LogDebug(this, "LoadingTransition beginning initialization...", Logger.TagFlags.INIT); safeComponent.EventDispatcher.AddListener <InitCompleteEvent>(OnInitComplete); safeComponent.Initialize(); } else { FinishTransition(); } }
public void SetCurrentState(State state) { State state2 = mCurrentState; mCurrentState = state; if (mCurrentState != state2) { Logger.LogInfo(this, $"state traverser {base.name} setting state from {state2.GetSafeName()} to {mCurrentState.GetSafeName()}", Logger.TagFlags.FLOW); StateChangeArgs stateChangeDetails = new StateChangeArgs(this, state2, mCurrentState, null, null); if (state2 != null) { state2.RaisePreExitEvent(stateChangeDetails); state2.RaiseExitEvent(stateChangeDetails); state2.RaisePostExitEvent(stateChangeDetails); } if (mCurrentState != null) { mCurrentState.RaisePreEnterEvent(stateChangeDetails); mCurrentState.RaiseEnterEvent(stateChangeDetails); mCurrentState.RaisePostEnterEvent(stateChangeDetails); } RaiseStateChangedEvent(); } }
public override void Reset() { mStateChangeDetails = null; mTimeElapsed = 0f; base.EventDispatcher.ClearAll(); }
public void RaiseExitEvent(StateChangeArgs stateChangeDetails) { EventDispatcher.DispatchEvent(new StateExitEvent(stateChangeDetails)); }
public void RaisePostEnterEvent(StateChangeArgs stateChangeDetails) { EventDispatcher.DispatchEvent(new StatePostEnterEvent(stateChangeDetails)); }
public abstract void Perform(StateChangeArgs stateChangeDetails);