Пример #1
0
 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;
 }
Пример #2
0
 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);
 }
Пример #3
0
        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();
        }
Пример #4
0
 public void SetData(TransitionData tData)
 {
     this.tData = tData;
     this.OnDataSet();
 }