Esempio n. 1
0
        private void RebuildUniversalCheck()
        {
            var preds = new List <Func <bool> >();

            if (Cooldown != null)
            {
                var p = SimpleAbilityPreciates.IsDone(Cooldown);
                preds.Add(p);
            }
            if (MagicCost != null)
            {
                preds.Add(MagicCost.CanSpendCost);
            }
            CastingCheck = new PredicateChecker(preds.ToArray());
        }
Esempio n. 2
0
        private void RebuildActorCheck()
        {
            var preds = new List <Func <Actor, bool> >();

            if (AllowSelf)
            {
                var p = SimpleAbilityPreciates.IsSelf(Self);
                preds.Add(p);
            }
            if (CastRange != null)
            {
                preds.Add(CastRange.InRange);
            }
            if (Teamable != null)
            {
                preds.Add(Teamable.IsAllowed);
            }
            TargetCheck = new PredicateChecker <Actor>(preds.ToArray());
        }