public TransitionInfo(eTransitionType type, eStateId dest, eTransition transition, TransitionData tData) { this.transitionType = type; this.idDest = dest; this.transition = transition; this.data = tData; this._transitions = new TransitionHandler[(int)eTransitionType.NoneTransition]; this._transitions[(int)eTransitionType.AddChild] = this.AddTransition; this._transitions[(int)eTransitionType.SimpleTransition] = this.SwitchStateTransition; }
public void StatTransitTo(FSMState state, eStateId destState, TransitionData tData) { this.OnStatFinished(state); if (this._stateStack.Count != 0) this.StatAddChild(this._states[this._stateStack[this._stateStack.Count - 1]], destState, tData); }
public void StatAddChild(FSMState parent, eStateId childType, TransitionData tData) { int idParent = this.FindStat(parent); if (idParent == -1) { Debug.LogWarning("StatAddChild : parent not found"); return; } if (idParent != this._stateStack.Count) { this.ParentKillChildren(idParent); } this._stateStack.Add(childType); this._states[childType].OnStateEnter(); }
public void SetData(TransitionData tData) { this.tData = tData; this.OnDataSet(); }