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." }); }
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)); }