/// <summary> /// Creates an instance of an AppliedStatusEffect from the given StatusEffect. /// </summary> /// <param name="applicator">The CombatEntity applying this instance of the AppliedStatusEffect.</param> /// <param name="statusEffect">The base to use for the AppliedStatusEffect.</param> /// <returns>Returns an instance of an AppliedStatusEffect that keeps track of a StatusEffect on a CombatEntity.</returns> private AppliedStatusEffect CreateAppliedStatus(CombatEntity applicator, CombatEntity recipient, StatusEffect statusEffect) { var appliedStatus = new AppliedStatusEffect(); appliedStatus.BaseStatus = statusEffect; appliedStatus.CumulativeDamage = DamageCalculator.GetDamage(applicator, statusEffect); appliedStatus.CumulativeHeal = DamageCalculator.GetHeal(applicator, statusEffect); appliedStatus.CumulativeHeal += DamageCalculator.GetPercentageHeal(recipient.Resources.MaxHealth, statusEffect.PercentHealPerTurn); appliedStatus.CurrentStacks = 1; appliedStatus.Duration = statusEffect.Duration; return(appliedStatus); }
/// <summary> /// Removes an AppliedStatusEffect from a CombatEntity, removing all the beneficial and detrimental effects. /// </summary> /// <param name="entity">The CombatEntity to remove the StatusEffect from.</param> /// <param name="appliedStatusEffect">The AppliedStatusEffect type to remove from the CombatEntity.</param> /// <returns>Returns true if removal was successful. Returns false if no StatusEffect was found or /// removal failed.</returns> public bool Remove(CombatEntity entity, AppliedStatusEffect appliedStatusEffect) { return(Remove(entity, appliedStatusEffect.BaseStatus)); }
public bool Remove(CombatEntity entity, AppliedStatusEffect appliedStatusEffect) { return(true); }