public virtual void RecieveDamage(Damage damage, SchoolSpell spellType = SchoolSpell.None) { var message = string.Format("You {0} have recieved {1} damage", Name, damage.MagicalDamage + damage.PhysicalDamage); HP -= damage.PhysicalDamage; HP -= damage.MagicalDamage; OnActionPerformed(new ActionPerformedEventArgs(message, ActionType.Fight)); }
public override void RecieveDamage(Damage damage, SchoolSpell schoolSpell = SchoolSpell.None) { var mDef = MagicalDefence; if (schoolSpell != SchoolSpell.None) mDef += (defensiveSpell != null && (defensiveSpell.CurrentDuration != 0 && defensiveSpell.SchoolSpell == schoolSpell)) ? defensiveSpell.MagicalPower : 0; if (defensiveSpell != null) defensiveSpell.CurrentDuration -= defensiveSpell.CurrentDuration != 0 ? 1 : 0; damage.PhysicalDamage -= pDef; damage.MagicalDamage -= mDef; base.RecieveDamage(damage); }