From e2fea06b160ad28ba2c695bfd7f94b9650266cbb Mon Sep 17 00:00:00 2001 From: Brianna O'Keefe Date: Mon, 12 Nov 2018 22:34:11 -0500 Subject: [PATCH] Support for liquidtanks added --- .../java/com/songoda/epichoppers/EpicHoppersPlugin.java | 8 ++++++++ .../com/songoda/epichoppers/listeners/BlockListeners.java | 6 ++++++ .../songoda/epichoppers/listeners/HopperListeners.java | 3 +++ .../songoda/epichoppers/listeners/InteractListeners.java | 2 ++ EpicHoppers-Plugin/src/main/resources/plugin.yml | 4 ++-- pom.xml | 7 ++++++- 6 files changed, 27 insertions(+), 3 deletions(-) diff --git a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/EpicHoppersPlugin.java b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/EpicHoppersPlugin.java index ff4a56a..26eca79 100644 --- a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/EpicHoppersPlugin.java +++ b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/EpicHoppersPlugin.java @@ -86,6 +86,8 @@ public class EpicHoppersPlugin extends JavaPlugin implements EpicHoppers { private Storage storage; + private boolean liquidtanks = false; + public static EpicHoppersPlugin getInstance() { return INSTANCE; } @@ -217,6 +219,8 @@ public class EpicHoppersPlugin extends JavaPlugin implements EpicHoppers { pluginManager.registerEvents(new InteractListeners(this), this); pluginManager.registerEvents(new InventoryListeners(this), this); + if (pluginManager.isPluginEnabled("LiquidTanks")) liquidtanks = true; + // Register default hooks if (pluginManager.isPluginEnabled("ASkyBlock")) this.register(HookASkyBlock::new); if (pluginManager.isPluginEnabled("FactionsFramework")) this.register(HookFactions::new); @@ -514,6 +518,10 @@ public class EpicHoppersPlugin extends JavaPlugin implements EpicHoppers { return playerDataManager; } + public boolean isLiquidtanks() { + return liquidtanks; + } + @Override public void register(Supplier hookSupplier) { this.registerProtectionHook(hookSupplier.get()); diff --git a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/BlockListeners.java b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/BlockListeners.java index 3d058fd..2b09b73 100644 --- a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/BlockListeners.java +++ b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/BlockListeners.java @@ -47,6 +47,9 @@ public class BlockListeners implements Listener { if (e.getBlock().getType() != Material.HOPPER) return; + if (instance.isLiquidtanks() && net.arcaniax.liquidtanks.object.LiquidTankAPI.isLiquidTank(e.getBlock().getLocation())) + return; + int amt = count(e.getBlock().getChunk()); int max = maxHoppers(player); @@ -111,6 +114,9 @@ public class BlockListeners implements Listener { if (event.getBlock().getType() != Material.HOPPER) return; + if (instance.isLiquidtanks() && net.arcaniax.liquidtanks.object.LiquidTankAPI.isLiquidTank(block.getLocation())) + return; + Hopper hopper = instance.getHopperManager().getHopper(block); Level level = hopper.getLevel(); diff --git a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/HopperListeners.java b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/HopperListeners.java index 21ea6d4..d4079b8 100644 --- a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/HopperListeners.java +++ b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/HopperListeners.java @@ -28,6 +28,9 @@ public class HopperListeners implements Listener { if (source.getLocation().getBlock().getType() != Material.HOPPER) return; + if (instance.isLiquidtanks() && net.arcaniax.liquidtanks.object.LiquidTankAPI.isLiquidTank(event.getDestination().getLocation())) + return; + Hopper hopper = instance.getHopperManager().getHopper(source.getLocation()); if (hopper.getSyncedBlock() == null) { hopper.setSyncedBlock(event.getDestination().getLocation().getBlock()); diff --git a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/InteractListeners.java b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/InteractListeners.java index 566c4d0..24238d9 100644 --- a/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/InteractListeners.java +++ b/EpicHoppers-Plugin/src/main/java/com/songoda/epichoppers/listeners/InteractListeners.java @@ -107,6 +107,8 @@ public class InteractListeners implements Listener { if (playerData.getSyncType() == null) { if (e.getClickedBlock().getType() == Material.HOPPER) { + if (instance.isLiquidtanks() && net.arcaniax.liquidtanks.object.LiquidTankAPI.isLiquidTank(e.getClickedBlock().getLocation())) + return; Hopper hopper = instance.getHopperManager().getHopper(e.getClickedBlock()); playerData.setLastHopper(hopper); if (instance.getConfig().getBoolean("Main.Allow hopper Upgrading") diff --git a/EpicHoppers-Plugin/src/main/resources/plugin.yml b/EpicHoppers-Plugin/src/main/resources/plugin.yml index 510a5eb..cf967b6 100644 --- a/EpicHoppers-Plugin/src/main/resources/plugin.yml +++ b/EpicHoppers-Plugin/src/main/resources/plugin.yml @@ -2,8 +2,8 @@ name: EpicHoppers description: EpicHoppers main: com.songoda.epichoppers.EpicHoppersPlugin depend: [Arconix] -softdepend: [WildStacker, Towny, RedProtect, Kingdoms, PlotsSquared, GriefPrevention, USkyBlock, ASkyBlock, WorldGuard, Factions, Vault] -version: 3.1.32 +softdepend: [LiquidTanks, WildStacker, Towny, RedProtect, Kingdoms, PlotsSquared, GriefPrevention, USkyBlock, ASkyBlock, WorldGuard, Factions, Vault] +version: 3.1.33 author: Songoda api-version: 1.13 commands: diff --git a/pom.xml b/pom.xml index 36df66f..28e26c0 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ com.songoda EpicHoppers 4.0.0 - 3.1.32 + 3.1.33 clean package @@ -60,6 +60,11 @@ arconix LATEST + + net.arcaniax + liquidtanks + LATEST + org kingdoms