예제 #1
0
 IState TryFindBetterState(IState state, Destructible target)
 {
     foreach (var a in Abilities)
     {
         if (a.IsValidTarget(target))
         {
             var s = new TryPerformAbility(this)
             {
                 Ability = a,
                 Chasing = target
             };
             if (state.IsBetterState(s))
             {
                 state = s;
             }
         }
     }
     return(state);
 }
예제 #2
0
 IState TryFindBetterState(IState state, Destructible target)
 {
     foreach (var a in Abilities)
         if (a.IsValidTarget(target))
         {
             var s = new TryPerformAbility(this)
             {
                 Ability = a,
                 Chasing = target
             };
             if (state.IsBetterState(s))
                 state = s;
         }
     return state;
 }