示例#1
0
 internal void SetInitialState(object stateId)
 {
     if (ContainsState(stateId))
     {
         _serializedInitialStateId = PlainStateMachineGenericTypeSerializer.Serialize(stateId);
     }
 }
        public StateInfo(object stateId, ScriptableState stateObject)
        {
            _serializedStateId = PlainStateMachineGenericTypeSerializer.Serialize(stateId);

            _stateIdTypeFullName = stateId.GetType().FullName;

            _stateObject = stateObject;
        }
        public TransitionInfo(object StateFrom, object Trigger, object StateTo, ScriptableGuardCondition[] guardConditions)
        {
            _serializedStateFrom = PlainStateMachineGenericTypeSerializer.Serialize(StateFrom);
            _serializedStateTo   = PlainStateMachineGenericTypeSerializer.Serialize(StateTo);
            _serializedTrigger   = PlainStateMachineGenericTypeSerializer.Serialize(Trigger);

            _stateIdTypeFullName = StateFrom.GetType().FullName;
            _triggerTypeFullName = Trigger.GetType().FullName;

            if (guardConditions != null)
            {
                _guardConditions = new ScriptableGuardCondition[guardConditions.Length];
                guardConditions.CopyTo(_guardConditions, 0);
            }
        }