void ApplyHeal(EiDamage heal) { if (heal.HasHealing()) { var healToBeAdded = Math.Min(MissingHealth, heal.Heal); currentHealth.Value += healToBeAdded; heal.RemoveHeal(healToBeAdded); } }
public virtual void Damage(EiDamage damage) { for (int i = subscribedDamagePipeline.Count - 1; i >= 0; i--) { if (damage.Break) { break; } if (damage.HasHealing()) { damage.Iteration++; Heal(damage); return; } subscribedDamagePipeline [i].Target(damage); } damage.Dispose(); }