Exemplo n.º 1
0
 public FSMTranslation(string name, FSMState input, FSMState output, FSMAction action)
 {
     this.name   = name;
     this.input  = input;
     this.output = output;
     this.action = action;
 }
Exemplo n.º 2
0
 public void AddAction(FSMAction action)
 {
     if (!Actions.Contains(action) && action.Owner == this)
     {
         Actions.Add(action);
     }
 }
Exemplo n.º 3
0
    public void AddAction(FSMAction action)
    {
        if (actions.Contains(action))
        {
            Debug.LogWarning("This state already contains " + action);
        }
        if (action.GetOwner() != this)
        {
            Debug.LogWarning("This state doesn't own " + action);
        }

        actions.Add(action);
    }
Exemplo n.º 4
0
    public State(GlobalStateData.FSMStateID stateid, FSMAction action, List<FSMReason> reasons)
    {
        var actionList = new List<FSMAction>();
        actionList.Add(action);

        this.stateID = stateid;
        this.actions = actionList;
        this.reasons = reasons;

        foreach (var reason in reasons)
        {
            AddTransition(reason.Transition, reason.GoToState);
        }
    }
Exemplo n.º 5
0
    public State(GlobalStateData.FSMStateID stateid, FSMAction action, List <FSMReason> reasons)
    {
        var actionList = new List <FSMAction>();

        actionList.Add(action);

        this.stateID = stateid;
        this.actions = actionList;
        this.reasons = reasons;

        foreach (var reason in reasons)
        {
            AddTransition(reason.Transition, reason.GoToState);
        }
    }
Exemplo n.º 6
0
 public FSMTranslation addTranslation(string name, Type eventType, FSMState input, FSMState output, FSMAction action)
 {
     if (!eventType.IsSubclassOf(typeof(IEvent)))
     {
         UnityEngine.Debug.LogError(string.Format("FSMTranslationMap.addTranslation Failed,{0} is not a event type", eventType.ToString()));
         return(null);
     }
     return(addTranslation(name, input, output, action));
 }
Exemplo n.º 7
0
 public FSMTranslation addTranslation(FSMState input, FSMState output, FSMAction action)
 {
     return(addTranslation(new FSMTranslation(input, output, action)));
 }
Exemplo n.º 8
0
 public FSMTranslation addTranslation(string name, FSMState input, FSMState output, FSMAction action)
 {
     return(addTranslation(new FSMTranslation(name, input, output, action)));
 }
Exemplo n.º 9
0
 public FSMTranslation(FSMState input, FSMState output, FSMAction action)
     : this("NoneName", input, output, action)
 {
 }