Esempio n. 1
0
 private bool ActivateActions(int startIndex)
 {
     for (int i = startIndex; i < Actions.Length; i++)
     {
         activeActionIndex = i;
         FsmStateAction fsmStateAction = Actions[i];
         if (!fsmStateAction.Enabled)
         {
             fsmStateAction.Finished = true;
             continue;
         }
         ActiveActions.Add(fsmStateAction);
         activeAction            = fsmStateAction;
         fsmStateAction.Active   = true;
         fsmStateAction.Finished = false;
         fsmStateAction.Init(this);
         fsmStateAction.Entered = true;
         fsmStateAction.OnEnter();
         if (Fsm.IsSwitchingState)
         {
             return(false);
         }
         if (!fsmStateAction.Finished && isSequence)
         {
             return(false);
         }
     }
     return(true);
 }