Add NPCHome hook

This commit is contained in:
Lucas Nicodemus 2012-01-01 01:49:36 -07:00
parent f04da74f8b
commit cc51e95eba

View file

@ -472,6 +472,31 @@ namespace TShockAPI
return args.Handled;
}
public class NPCHomeChangeEventArgs : HandledEventArgs
{
public short ID { get; set; }
public short X { get; set; }
public short Y { get; set; }
public byte Homeless { get; set; }
}
public static HandlerList<NPCHomeChangeEventArgs> NPCHome;
private static bool OnUpdateNPCHome(short id, short x, short y, byte homeless)
{
if (NPCHome == null)
return false;
var args = new NPCHomeChangeEventArgs
{
ID = id,
X = x,
Y = y,
Homeless = homeless,
};
NPCHome.Invoke(null, args);
return args.Handled;
}
#endregion
public static void InitGetDataHandler()
{
@ -1711,6 +1736,9 @@ namespace TShockAPI
var y = args.Data.ReadInt16();
var homeless = args.Data.ReadInt8();
if (OnUpdateNPCHome(id, x, y, homeless))
return true;
if (!args.Player.Group.HasPermission(Permissions.movenpc))
{
args.Player.SendMessage("You do not have permission to relocate NPCs.", Color.Red);