示例#1
0
 public FSMStateMachineLogic(Type stateClass, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     this.m_ChildrenTypes = new List <Type>();
     this.m_StateClass    = stateClass;
     this.m_OwnerSM       = ownerSM;
     this.m_Parent        = parent;
 }
 public FSMStateMachineLogic(System.Type stateClass, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     m_ChildrenTypes = new List<System.Type>();
     m_StateClass = stateClass;
     m_OwnerSM = ownerSM;
     m_Parent = parent;
 }
示例#3
0
 public FSMStateMachineLogic(System.Type stateClass, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     m_ChildrenTypes = new List <System.Type>();
     m_StateClass    = stateClass;
     m_OwnerSM       = ownerSM;
     m_Parent        = parent;
 }
 public FSMStateMachineLogic(FSMStateType stateType, List<System.Type> childrenTypes, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     m_StateClass = null;
     m_StateType = stateType;
     m_ChildrenTypes = childrenTypes;
     m_Parent = parent;
     m_OwnerSM = ownerSM;
 }
示例#5
0
 public FSMStateMachineLogic(FSMStateType stateType, List <Type> childrenTypes, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     this.m_StateClass    = null;
     this.m_StateType     = stateType;
     this.m_ChildrenTypes = childrenTypes;
     this.m_Parent        = parent;
     this.m_OwnerSM       = ownerSM;
 }
示例#6
0
 public FSMStateMachineLogic(FSMStateType stateType, List <System.Type> childrenTypes, FSMStateMachine ownerSM, FSMStateMachineLogic parent)
 {
     m_StateClass    = null;
     m_StateType     = stateType;
     m_ChildrenTypes = childrenTypes;
     m_Parent        = parent;
     m_OwnerSM       = ownerSM;
 }
示例#7
0
 public void Exit()
 {
     for (int i = 0; i < this.m_ChildSMs.Count; i++)
     {
         this.m_ChildSMs[i].Exit();
     }
     if (this.m_State != null)
     {
         this.m_State.Exit();
     }
     this.m_OwnerSM = null;
     this.m_Parent  = null;
     this.m_State   = null;
     this.m_ChildSMs.Clear();
 }
示例#8
0
        /// <summary>
        /// Exits the specified state. All children states will be exited before calling exit on m_State
        /// </summary>
        public void Exit()
        {
            for (int i = 0; i < m_ChildSMs.Count; i++)
            {
                m_ChildSMs[i].Exit();
            }

            if (m_State != null)
            {
                m_State.Exit();
            }

            // reset all the data in case user is holding on to the object
            m_OwnerSM = null;
            m_Parent  = null;
            m_State   = null;
            m_ChildSMs.Clear();
        }
        /// <summary>
        /// Exits the specified state. All children states will be exited before calling exit on m_State
        /// </summary>
        public void Exit()
        {
            for (int i = 0; i < m_ChildSMs.Count; i++)
            {
                m_ChildSMs[i].Exit();
            }

            if (m_State != null)
            {
                m_State.Exit();
            }

            // reset all the data in case user is holding on to the object
            m_OwnerSM = null;
            m_Parent = null;
            m_State = null;
            m_ChildSMs.Clear();
        }