From f814d568e507be3d166df39a93f32d201502d7fd Mon Sep 17 00:00:00 2001 From: Nightklp <120942242+Nightklpgaming@users.noreply.github.com> Date: Thu, 3 Apr 2025 16:21:57 +0800 Subject: [PATCH] Update Bouncer.cs return a item when a item frame was interacted in protected region you do not have permission with --- TShockAPI/Bouncer.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/TShockAPI/Bouncer.cs b/TShockAPI/Bouncer.cs index 89ccf7bc..e56c6487 100644 --- a/TShockAPI/Bouncer.cs +++ b/TShockAPI/Bouncer.cs @@ -2491,6 +2491,11 @@ namespace TShockAPI if (!args.Player.HasBuildPermission(args.X, args.Y)) { + int num = Item.NewItem(new EntitySource_DebugCommand(), (args.X * 16) + 8, (args.Y * 16) + 8, args.Player.TPlayer.width, args.Player.TPlayer.height, args.ItemID, args.Stack, noBroadcast: true, args.Prefix, noGrabDelay: true); + Main.item[num].playerIndexTheItemIsReservedFor = args.Player.Index; + NetMessage.SendData((int)PacketTypes.ItemDrop, -1, -1, NetworkText.Empty, num, 1f); + NetMessage.SendData((int)PacketTypes.ItemOwner, -1, -1, NetworkText.Empty, num); + TShock.Log.ConsoleDebug(GetString("Bouncer / OnPlaceItemFrame rejected permissions from {0}", args.Player.Name)); NetMessage.SendData((int)PacketTypes.UpdateTileEntity, -1, -1, NetworkText.Empty, args.ItemFrame.ID, 0, 1); args.Handled = true;