示例#1
0
        public override List <string> Apply(ColossoFighter user, ColossoFighter target)
        {
            if (!target.IsAlive)
            {
                return(new List <string>());
            }

            target.RemoveCondition(TargetConditions);

            if (user is PlayerFighter p)
            {
                p.BattleStats.Supported++;
            }
            return(new List <string>()
            {
                $"{target.Name}'s Conditions were cured."
            });
        }
示例#2
0
        protected virtual Validation Validate(ColossoFighter User)
        {
            List <string> log = new List <string>();

            if (!User.IsAlive)
            {
                return(new Validation(false, log));
            }

            if (User.HasCondition(Condition.Stun))
            {
                log.Add($"{User.Name} can't move.");
                return(new Validation(false, log));
            }

            if (User.HasCondition(Condition.Sleep))
            {
                log.Add($"{User.Name} is asleep!");
                return(new Validation(false, log));
            }

            if (User.HasCondition(Condition.Flinch))
            {
                log.Add($"{User.Name} can't move.");
                User.RemoveCondition(Condition.Flinch);
                return(new Validation(false, log));
            }

            if (User.HasCondition(Condition.ItemCurse) && !User.IsImmuneToItemCurse && Global.RandomNumber(0, 3) == 0)
            {
                log.Add($"{User.Name} can't move.");
                return(new Validation(false, log));
            }

            return(new Validation(true, log));
        }