public void Heal(Character character) { if (this.IsAlive && character.IsAlive) { if (this.Faction != character.Faction) { throw new InvalidOperationException("Cannot heal enemy character!"); } character.GainHeal(this.AbilityPoints); } else { throw new InvalidOperationException("Must be alive to perform this action!"); } }