From 4d7fd01c963d1c51cd1a52d98ae9f064e32c4119 Mon Sep 17 00:00:00 2001 From: RobotHanzo Date: Tue, 27 Oct 2020 22:01:49 +0800 Subject: [PATCH] New feature to block grappling on its cooldown --- src/main/java/codes/biscuit/skyblockaddons/core/Feature.java | 2 ++ .../biscuit/skyblockaddons/listeners/PlayerListener.java | 5 +++++ .../java/codes/biscuit/skyblockaddons/utils/EnumUtils.java | 3 ++- src/main/resources/lang/en_us.json | 3 ++- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java b/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java index bead460b98..64d80be884 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java +++ b/src/main/java/codes/biscuit/skyblockaddons/core/Feature.java @@ -183,6 +183,8 @@ public enum Feature { HIDE_OTHER_PLAYERS_PRESENTS(150, "settings.hideOtherPlayersPresents", null,false), EASIER_PRESENT_OPENING(151, "settings.easierPresentOpening", null,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), diff --git a/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java b/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java index 6c4913f581..1c80ba3735 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java +++ b/src/main/java/codes/biscuit/skyblockaddons/listeners/PlayerListener.java @@ -436,6 +436,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 0f3c017ec7..bf3f7bcb3c 100644 --- a/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java +++ b/src/main/java/codes/biscuit/skyblockaddons/utils/EnumUtils.java @@ -289,7 +289,8 @@ public enum FeatureCredit { Feature.DUNGEONS_SECRETS_DISPLAY, Feature.SHOW_SALVAGE_ESSENCES_COUNTER, Feature.SHOW_SWORD_KILLS), 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 8552d17327..4f7560c6f3 100644 --- a/src/main/resources/lang/en_us.json +++ b/src/main/resources/lang/en_us.json @@ -172,7 +172,8 @@ "disableBossMessages": "Disable Boss Messages", "hideOtherPlayersPresents": "Hide Other Player's Presents", "easierPresentOpening": "Open Presents Easier", - "showSwordKills": "Show Sword Kills" + "showSwordKills": "Show Sword Kills", + "blockGrapplingHookOnCooldown": "Block Grappling Hook on Cooldown" }, "messages": { "enchants": "Enchants",