diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 187b7083..e59a8de5 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -116,6 +116,7 @@ namespace TShockAPI {PacketTypes.SignNew, HandleSign}, {PacketTypes.PlayerSlot, HandlePlayerSlot}, {PacketTypes.TileGetSection, HandleGetSection}, + {PacketTypes.UpdateNPCHome, UpdateNPCHome }, }; } @@ -759,5 +760,15 @@ namespace TShockAPI args.Player.RequestedSection = true; return false; } + + private static bool UpdateNPCHome( GetDataHandlerArgs args ) + { + if (!args.Player.Group.HasPermission(Permissions.moveNPC)) + { + args.Player.SendMessage("You do not have permission to relocate NPCs.", Color.Red); + return true; + } + return false; + } } } diff --git a/TShockAPI/Permissions.cs b/TShockAPI/Permissions.cs index af7e5bcc..105f8464 100644 --- a/TShockAPI/Permissions.cs +++ b/TShockAPI/Permissions.cs @@ -141,6 +141,9 @@ namespace TShockAPI [Description("User can change hardmode state.")] public static readonly string hardmode; + [Description("User can change the homes of NPCs.")] + public static readonly string moveNPC; + static Permissions() { foreach (var field in typeof(Permissions).GetFields())