diff --git a/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java b/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java index b174748993..7e96156f4e 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java +++ b/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java @@ -167,6 +167,8 @@ public enum Feature { COMPACT_TAB_LIST(152, "settings.compactTabList", null, false), ENCHANTMENTS_HIGHLIGHT(153, "settings.highlightMaxEnchantments", new GuiFeatureData(ColorCode.GOLD, true), false), + BLOCK_GRAPPLING_HOOK_ON_COOLDOWN(152, "settings.blockGrapplingHookOnCooldown", null, false), + WARNING_TIME(-1, Message.SETTING_WARNING_DURATION, false), WARP_ADVANCED_MODE(-1, Message.SETTING_ADVANCED_MODE, true), ADD(-1, null, false), diff --git a/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java b/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java index 2a94f6d90b..b693639b0d 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java +++ b/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java @@ -454,6 +454,11 @@ public void onInteract(PlayerInteractEvent e) { lastBobberEnteredWater = Long.MAX_VALUE; oldBobberPosY = 0; } + if (Objects.equals(ItemUtils.getSkyBlockItemID(heldItem), "GRAPPLING_HOOK") + && main.getConfigValues().isEnabled(Feature.BLOCK_GRAPPLING_HOOK_ON_COOLDOWN) + && CooldownManager.isOnCooldown(heldItem)) { + e.setCanceled(true); + } if (main.getConfigValues().isEnabled(Feature.SHOW_ITEM_COOLDOWNS) && mc.thePlayer.fishEntity != null) { CooldownManager.put(mc.thePlayer.getHeldItem()); } diff --git a/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java b/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java index 94e6828a43..4c73ad40a1 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java +++ b/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java @@ -285,7 +285,8 @@ public enum FeatureCredit { Feature.DUNGEONS_SECRETS_DISPLAY, Feature.SHOW_SALVAGE_ESSENCES_COUNTER, Feature.SHOW_SWORD_KILLS, Feature.ENCHANTMENTS_HIGHLIGHT), TIRELESS_TRAVELER("TirelessTraveler", "github.com/ILikePlayingGames", Feature.DUNGEON_DEATH_COUNTER), KAASBROODJU("kaasbroodju", "github.com/kaasbroodju", Feature.SKILL_PROGRESS_BAR, Feature.SHOW_SKILL_PERCENTAGE_INSTEAD_OF_XP, Feature.SHOW_SKILL_XP_GAINED), - PHOUBE("Phoube", "github.com/Phoube", Feature.HIDE_OTHER_PLAYERS_PRESENTS, Feature.EASIER_PRESENT_OPENING); + PHOUBE("Phoube", "github.com/Phoube", Feature.HIDE_OTHER_PLAYERS_PRESENTS, Feature.EASIER_PRESENT_OPENING), + ROBOTHANZO("RobotHanzo", "robothanzo.dev", Feature.BLOCK_GRAPPLING_HOOK_ON_COOLDOWN); private Set features; private String author; diff --git a/src/main/resources/lang/en_us.json b/src/main/resources/lang/en_us.json index 80dc487616..547f061288 100644 --- a/src/main/resources/lang/en_us.json +++ b/src/main/resources/lang/en_us.json @@ -174,7 +174,8 @@ "easierPresentOpening": "Open Presents Easier", "showSwordKills": "Show Sword Kills", "compactTabList": "Compact Tab List", - "highlightMaxEnchantments": "Highlight Special Enchantments" + "highlightMaxEnchantments": "Highlight Special Enchantments", + "blockGrapplingHookOnCooldown": "Block Grappling Hook on Cooldown" }, "messages": { "enchants": "Enchants",