ModernUO/Projects/Scripts/Spells/Targeting/SpellTargetMobile.cs
2019-08-02 18:16:11 -07:00

30 lines
682 B
C#

using Server.Targeting;
namespace Server.Spells
{
public interface ISpellTargetingMobile : ISpell
{
void Target(Mobile from);
}
public class SpellTargetMobile : Target, ISpellTarget
{
private ISpellTargetingMobile m_Spell;
public ISpell Spell => m_Spell;
public SpellTargetMobile(ISpellTargetingMobile spell, TargetFlags flags, int range = 12) : base(range, false, flags)
{
m_Spell = spell;
}
protected override void OnTarget(Mobile from, object o)
{
m_Spell.Target(o as Mobile);
}
protected override void OnTargetFinish(Mobile from)
{
m_Spell?.FinishSequence();
}
}
}