diff --git a/TShockAPI/Bouncer.cs b/TShockAPI/Bouncer.cs
index 6e9bdbf1..30268f41 100644
--- a/TShockAPI/Bouncer.cs
+++ b/TShockAPI/Bouncer.cs
@@ -42,6 +42,7 @@ namespace TShockAPI
{
// Setup hooks
+ GetDataHandlers.ChestOpen.Register(OnChestOpen);
GetDataHandlers.PlaceChest.Register(OnPlaceChest);
GetDataHandlers.LiquidSet.Register(OnLiquidSet);
GetDataHandlers.ProjectileKill.Register(OnProjectileKill);
@@ -54,6 +55,31 @@ namespace TShockAPI
GetDataHandlers.TileEdit.Register(OnTileEdit);
}
+ internal void OnChestOpen(object sender, GetDataHandlers.ChestOpenEventArgs args)
+ {
+
+ if (TShock.CheckIgnores(args.Player))
+ {
+ args.Handled = true;
+ return;
+ }
+
+ if (TShock.CheckRangePermission(args.Player, args.X, args.Y))
+ {
+ args.Handled = true;
+ return;
+ }
+
+ if (TShock.CheckTilePermission(args.Player, args.X, args.Y) && TShock.Config.RegionProtectChests)
+ {
+ args.Handled = true;
+ return;
+ }
+
+ int id = Chest.FindChest(args.X, args.Y);
+ args.Player.ActiveChest = id;
+ }
+
/// The place chest event that Bouncer hooks to prevent accidental damage.
/// The object that triggered the event.
/// The packet arguments that the event has.
diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs
index da75b529..5606c50b 100644
--- a/TShockAPI/GetDataHandlers.cs
+++ b/TShockAPI/GetDataHandlers.cs
@@ -2413,24 +2413,6 @@ namespace TShockAPI
if (OnChestOpen(x, y, args.Player))
return true;
- if (TShock.CheckIgnores(args.Player))
- {
- return true;
- }
-
- if (TShock.CheckRangePermission(args.Player, x, y))
- {
- return true;
- }
-
- if (TShock.CheckTilePermission(args.Player, x, y) && TShock.Config.RegionProtectChests)
- {
- return true;
- }
-
- int id = Chest.FindChest(x, y);
- args.Player.ActiveChest = id;
-
return false;
}