Пример #1
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     var memory = context.MemoryAPI;
     var mpReserve = new Range(action.MPReserveLow, action.MPReserveHigh);
     return mpReserve.InRange(memory.Player.MPPCurrent) || mpReserve.NotSet();
 }
Пример #2
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     var memory = context.MemoryAPI;
     return !ResourceHelper.IsSpell(action.Ability.AbilityType) ||
            !ProhibitEffects.ProhibitEffectsSpell
                .Intersect(memory.Player.StatusEffects).Any();
 }
Пример #3
0
        /// <summary>
        ///     Filters out unusable buffing abilities.
        /// </summary>
        /// <param name="fface"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public static bool BuffingFilter(IMemoryAPI fface, BattleAbility action)
        {
            var actionContext = new ActionContext
            {
                MemoryAPI = fface,
                BattleAbility = action
            };

            var actionRules = new BuffingActionRules();
            return actionRules.IsValid(actionContext);
        }
Пример #4
0
        public bool IsValid(ActionContext context)
        {
            var action = context.BattleAbility;
            var memory = context.MemoryAPI;

            var hasEffect = memory.Player.StatusEffects.Any(effect =>
                Regex.IsMatch(effect.ToString(),
                    action.StatusEffect.Replace(" ", "_"),
                    RegexOptions.IgnoreCase));

            return string.IsNullOrWhiteSpace(action.StatusEffect) ||
                   (hasEffect && action.TriggerOnEffectPresent) ||
                   (!hasEffect && !action.TriggerOnEffectPresent);
        }
Пример #5
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     var memory = context.MemoryAPI;
     return action.Ability.MpCost <= memory.Player.MPCurrent;
 }
Пример #6
0
 public bool IsValid(ActionContext context)
 {
     return rules.All(x => x.IsValid(context));
 }
Пример #7
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     return action.Recast == 0 || action.LastCast <= DateTime.Now;
 }
Пример #8
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     var memory = context.MemoryAPI;
     return AbilityUtils.IsRecastable(memory, action.Ability);
 }
Пример #9
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     return action.IsEnabled;
 }
Пример #10
0
 public bool IsValid(ActionContext context)
 {
     var action = context.BattleAbility;
     return !string.IsNullOrWhiteSpace(action.Name);
 }