From dd3e009413cc1c10b5bb9eed5f1e8bb5be7fa94b Mon Sep 17 00:00:00 2001 From: Ben Date: Sun, 10 Apr 2016 10:53:07 +0100 Subject: [PATCH] Remove silent chest opening mechanism (which was completely broken), and instead don't allow incognito staff to open chests --- .../game/clans/clans/ClansManager.java | 4 -- .../clans/staff/SilentChestInventory.java | 37 -------------- .../clans/clans/staff/SilentChestOpen.java | 49 ------------------- .../game/clans/gameplay/Gameplay.java | 19 +++++++ 4 files changed, 19 insertions(+), 90 deletions(-) delete mode 100644 Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestInventory.java delete mode 100644 Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestOpen.java diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/ClansManager.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/ClansManager.java index 82320d92f..4d3d9c72f 100644 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/ClansManager.java +++ b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/ClansManager.java @@ -57,7 +57,6 @@ import mineplex.core.explosion.Explosion; import mineplex.core.hologram.Hologram; import mineplex.core.hologram.HologramManager; import mineplex.core.incognito.IncognitoManager; -import mineplex.core.incognito.events.IncognitoHidePlayerEvent; import mineplex.core.incognito.events.IncognitoStatusChangeEvent; import mineplex.core.movement.Movement; import mineplex.core.npc.NpcManager; @@ -99,7 +98,6 @@ import mineplex.game.clans.clans.redis.ClanLoadCommandHandler; import mineplex.game.clans.clans.regions.ClansRegions; import mineplex.game.clans.clans.scoreboard.ClansScoreboardManager; import mineplex.game.clans.clans.siege.SiegeManager; -import mineplex.game.clans.clans.staff.SilentChestOpen; import mineplex.game.clans.clans.supplyDrop.SupplyDropManager; import mineplex.game.clans.clans.tntGenerator.TntGeneratorManager; import mineplex.game.clans.clans.war.WarManager; @@ -296,8 +294,6 @@ public class ClansManager extends MiniClientPluginimplements IRelati new Field(plugin, creature, _condition, this, energy, serverName); - new SilentChestOpen(this); - // Required managers to be initialized new Spawn(plugin, this); new NPCManager(this, _hologramManager); diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestInventory.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestInventory.java deleted file mode 100644 index 505f0a340..000000000 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestInventory.java +++ /dev/null @@ -1,37 +0,0 @@ -package mineplex.game.clans.clans.staff; - -import org.bukkit.block.Chest; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.inventory.InventoryCloseEvent; -import org.bukkit.inventory.Inventory; - -import mineplex.core.common.util.UtilServer; - -public class SilentChestInventory implements Listener -{ - private Chest _chest; - private Inventory _inventory; - - private Player _viewer; - - public SilentChestInventory(Chest chest, Player viewer) - { - _chest = chest; - - viewer.openInventory(_chest.getBlockInventory()); - - UtilServer.RegisterEvents(this); - } - - @EventHandler - public void closeInventory(InventoryCloseEvent event) - { - if (event.getInventory().equals(_inventory) && event.getPlayer().equals(_viewer)) - { - UtilServer.Unregister(this); - } - } - -} \ No newline at end of file diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestOpen.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestOpen.java deleted file mode 100644 index 2f9bfabae..000000000 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/clans/staff/SilentChestOpen.java +++ /dev/null @@ -1,49 +0,0 @@ -package mineplex.game.clans.clans.staff; - -import org.bukkit.block.BlockState; -import org.bukkit.block.Chest; -import org.bukkit.event.EventHandler; -import org.bukkit.event.player.PlayerInteractEvent; - -import mineplex.core.MiniPlugin; -import mineplex.core.common.Rank; -import mineplex.core.common.util.UtilServer; -import mineplex.core.incognito.IncognitoManager; -import mineplex.game.clans.clans.ClansManager; - -public class SilentChestOpen extends MiniPlugin -{ - private ClansManager _clansManager; - - public SilentChestOpen(ClansManager clansManager) - { - super("Silent Chest", clansManager.getPlugin()); - - _clansManager = clansManager; - } - - @EventHandler - public void onInteract(PlayerInteractEvent event) - { - if (!_clansManager.getIncognitoManager().Get(event.getPlayer()).Status) - return; - - if (!ClansManager.getInstance().getClientManager().hasRank(event.getPlayer(), Rank.CMOD)) - return; - - if (event.getClickedBlock() == null) - return; - - BlockState block = event.getClickedBlock().getState(); - - if (!(block instanceof Chest)) - return; - - Chest chest = (Chest) block; - - UtilServer.RegisterEvents(new SilentChestInventory(chest, event.getPlayer())); - - event.setCancelled(true); - - } -} \ No newline at end of file diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/gameplay/Gameplay.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/gameplay/Gameplay.java index 5a212665d..23c226fe0 100644 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/gameplay/Gameplay.java +++ b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/gameplay/Gameplay.java @@ -304,6 +304,25 @@ public class Gameplay extends MiniPlugin event.setCancelled(true); } + @EventHandler + public void onInteract(PlayerInteractEvent event) + { + if (!_clansManager.getIncognitoManager().Get(event.getPlayer()).Status) + { + return; + } + + if (!event.getClickedBlock().getType().equals(Material.CHEST) + && !event.getClickedBlock().getType().equals(Material.TRAPPED_CHEST)) + { + return; + } + + UtilPlayer.message(event.getPlayer(), F.main("Clans", "You are not allowed to use this whilst incognito.")); + + event.setCancelled(true); + } + /** * Disable all Piston related events in Clans *