ModernUO/Projects/Scripts/Engines/Ethics/Core/Power.cs
2019-08-02 18:16:11 -07:00

33 lines
No EOL
731 B
C#

using Server.Network;
namespace Server.Ethics
{
public abstract class Power
{
protected PowerDefinition m_Definition;
public PowerDefinition Definition => m_Definition;
public virtual bool CheckInvoke(Player from)
{
if (!from.Mobile.CheckAlive())
return false;
if (from.Power < m_Definition.Power)
{
from.Mobile.LocalOverheadMessage(MessageType.Regular, 0x3B2, false,
"You lack the power to invoke this ability.");
return false;
}
return true;
}
public abstract void BeginInvoke(Player from);
public virtual void FinishInvoke(Player from)
{
from.Power -= m_Definition.Power;
}
}
}