public void TakeDamage(int damage) { if (!this.IsImmuneToDamage) { if (this.HasDivineShield) { this.RemoveStatusEffects(MinionStatusEffects.DIVINE_SHIELD); return; } this.CurrentHealth -= damage; // fire damage dealt event GameEventManager.DamageDealt(this, damage); // Check if we should enrage if (this is IEnragable && this.CurrentHealth < this.MaxHealth) { ((IEnragable)this).Enrage(); } if (this.CurrentHealth <= 0 && !this.IsImmuneToDeath) { this.Die(); } } }