protected bool OnDamageLifeform(ControlEvents.DoHealthDamageEventArgs e) { damageEventHandler eventHandler = RaiseDamage; if (eventHandler != null) { eventHandler.Invoke(this, e); return(e.Killed); } return(false); }
/// <summary> /// The lifeform has taken damage. /// </summary> /// <remarks><paramref name="e"/> contains the ID of the sender, of the receiver and the amount of damage.</remarks> /// <param name="sender"></param> /// <param name="e"></param> protected virtual void DamageEventHandler(object sender, ControlEvents.DoHealthDamageEventArgs e) { //delegate. This lifeform has taken damage. if (e.IDs.ReceiverID == ID) { Health -= e.Damage; if (Health <= 0) { Death(); } } }