servuo/Scripts/Context Menus/SimpleContextMenuEntry.cs
TrueUO 9b5739551b
Changes (#4829)
- Fixed exploit with Mysterious Wisp outside dungeon Despise. It now works according to EA.
- Added in Publish 109 store and 23rd Anniversary Items (Thanks @argalep)

Co-authored-by: TrueUO <knight.daniel.r@gmail.com>
2020-08-21 08:58:28 -07:00

53 lines
1.4 KiB
C#

using System;
namespace Server.ContextMenus
{
public class SimpleContextMenuEntry : ContextMenuEntry
{
public Mobile From { get; private set; }
public Action<Mobile> Callback { get; set; }
public SimpleContextMenuEntry(Mobile from, int localization, Action<Mobile> callback = null, int range = -1, bool enabled = true) : base(localization, range)
{
From = from;
Callback = callback;
Enabled = enabled;
}
public override void OnClick()
{
Callback?.Invoke(From);
}
}
public class SimpleContextMenuEntry<T> : ContextMenuEntry
{
private readonly bool _NonLocalUse;
public Mobile From { get; private set; }
public T State { get; private set; }
public Action<Mobile, T> Callback { get; set; }
public override bool NonLocalUse => _NonLocalUse;
public SimpleContextMenuEntry(Mobile from, int localization, Action<Mobile, T> callback, T state, int range = -1, bool enabled = true, bool nonlocalUse = false) : base(localization, range)
{
From = from;
State = state;
Callback = callback;
_NonLocalUse = nonlocalUse;
Enabled = enabled;
}
public override void OnClick()
{
if (Callback != null)
{
Callback(From, State);
}
}
}
}