public F3_BaseState(string name, OnEnterState onEnter, OnUpdateState onUpdate, OnExitState onExit) { m_stateName = name; m_onEnter = onEnter; m_onUpdate = onUpdate; m_onExit = onExit; }
protected override void OnDestroy() { foreach (var param in m_parameters) { param.Clear(); } states.Clear(true); preStateTransitions.Clear(true); anyStateTransitions.Clear(true); subStateMachines.Clear(); hitEffects.Clear(); deadEffects.Clear(); m_coolGroups.Clear(); m_passiveHash.Clear(); m_laydown = null; creature = null; passiveSource = null; passiveMask = 0; info = null; onStateEnded = null; onEnterState = null; onQuitState = null; onRebuild = null; }
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (OnEnterState != null) { OnEnterState.Invoke(stateInfo.shortNameHash); } }
public NetBaseState(TcpSocket parent, NETWORKSTATE netState = NETWORKSTATE.NS_NONE, OnEnterState enter = null, OnExitState exit = null) { this.parent = parent; this.netState = netState; onEnter = enter; onExit = exit; }
public virtual void EnterState() { Debug.Log("Entering State"); for (int i = 0; i < transform.childCount; i++) { transform.GetChild(i).gameObject.SetActive(true); } OnEnterState.Invoke(); }
private IEnumerator LoadScenesCoroutine(SceneState state) { OnExitState?.Invoke(currentState, state); //Loading to Empty Scene to avoid memory bloat during cross-load AsyncOperation asyncLoad = SceneManager.LoadSceneAsync(stateList[SceneState.Empty].SceneName); while (!asyncLoad.isDone) { yield return(null); } //Actually loading new scene asyncLoad = SceneManager.LoadSceneAsync(stateList[state].SceneName, LoadSceneMode.Single); while (!asyncLoad.isDone) { yield return(null); } OnEnterState?.Invoke(currentState, state); currentState = state; }
public bool CreateState(string sName, OnEnterState enterFunc, OnUpdateState updateFunc, OnExitState exitFunc) { if (FindState(sName) != null) { // We don't want any duplicate. return false; } F3_BaseState newState = new F3_BaseState(sName, enterFunc, updateFunc, exitFunc); if (newState == null) { // Failed to Create. return false; } m_states.Add(newState); return true; }
public virtual void EnterState(FiniteStateMachine fsm) { OnEnterState?.Invoke(); }