feat: Adds ability groups, DOT abilities, and combat abilities (#1264)
- [X] Adds `MonsterAbilitySingleTarget` - [X] Adds `MonsterAbilitySingleTargetDoT` - [X] Adds monster ability groups with weighted abilities - [X] Adds rune corruption ability - [X] Adds poison gas counter ability - [X] Adds stun attack ability - [X] Adds throw hatchet counter ability - [X] Adds fanning fire ability - [X] Fixes destroy equipment to skip spell channel items
This commit is contained in:
parent
df9a58dd49
commit
520f15e46c
62 changed files with 644 additions and 546 deletions
|
|
@ -0,0 +1,22 @@
|
|||
namespace Server.Mobiles;
|
||||
|
||||
public abstract class MonsterAbilitySingleTarget : MonsterAbility
|
||||
{
|
||||
public override void Trigger(MonsterAbilityTrigger trigger, BaseCreature source, Mobile target)
|
||||
{
|
||||
if (CanEffectTarget(trigger, source, target))
|
||||
{
|
||||
OnTarget(trigger, source, target);
|
||||
}
|
||||
|
||||
base.Trigger(trigger, source, target);
|
||||
}
|
||||
|
||||
protected virtual void OnTarget(MonsterAbilityTrigger trigger, BaseCreature source, Mobile defender)
|
||||
{
|
||||
source.DoHarmful(defender);
|
||||
}
|
||||
|
||||
protected virtual bool CanEffectTarget(MonsterAbilityTrigger trigger, BaseCreature source, Mobile defender) =>
|
||||
defender.Alive && source.CanBeHarmful(defender);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue