ModernUO/Projects/UOContent/Mobiles/Abilities/MonsterAbilityAttack.cs
Kamron Batman 3c636b04fd
feat: Adds magical barrier and ebolt counter ability (#1182)
* Adds magical barrier ability (Pre-UOML)
* Adds ebolt counter (Post-UOML)
2022-10-02 20:48:53 -07:00

22 lines
702 B
C#

namespace Server.Mobiles;
public abstract class MonsterAbilityAttack : MonsterAbility
{
public override void Trigger(MonsterAbilityTrigger trigger, BaseCreature source, Mobile target)
{
if (CanEffectTarget(trigger, source, target))
{
OnAttack(trigger, source, target);
}
base.Trigger(trigger, source, target);
}
protected virtual void OnAttack(MonsterAbilityTrigger trigger, BaseCreature source, Mobile defender)
{
source.DoHarmful(defender);
}
protected virtual bool CanEffectTarget(MonsterAbilityTrigger trigger, BaseCreature source, Mobile defender) =>
defender.Alive && source.CanBeHarmful(defender);
}