From 20456e85ac2e30d1d97063efcb3a5a8b8b28b974 Mon Sep 17 00:00:00 2001 From: James <38226001+f0rmatme@users.noreply.github.com> Date: Thu, 27 Jun 2019 14:05:52 -0700 Subject: [PATCH] Updated menu swapper (#722) * Supersedes/Closes runelite#7353 Supersedes/Closes runelite#7415 Supersedes/Closes runelite#7493 Supersedes/Closes runelite#7401 Supersedes/Closes runelite#7151 Supersedes/Closes runelite#5383 streamline teleport item swaps Move Mage of Zamorak teleport to Travel swap It is a travel swap so there's no reason for it to have it's own option. unify bank and exchange options There's no reason for these to be separate options. Swap Coal Bag Empty - Makes Empty the left click option when in a bank * Update Signed-off-by: James Munson * Added Trader Crew Signed-off-by: James Munson * Added swap for quick enter[ToB] Added swap Talk-to with Enchant for Eluned Signed-off-by: James Munson --- .../MenuEntrySwapperConfig.java | 428 +++++++++--------- .../MenuEntrySwapperPlugin.java | 102 ++--- .../menuentryswapper/util/CharterOption.java | 20 + .../util/teleEquippedMode.java | 20 + 4 files changed, 297 insertions(+), 273 deletions(-) create mode 100644 runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/CharterOption.java create mode 100644 runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/teleEquippedMode.java diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperConfig.java index d4fd2aabf4..b51940b206 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperConfig.java @@ -46,7 +46,8 @@ import net.runelite.client.plugins.menuentryswapper.util.RingOfWealthMode; import net.runelite.client.plugins.menuentryswapper.util.SkillsNecklaceMode; import net.runelite.client.plugins.menuentryswapper.util.SlayerRingMode; import net.runelite.client.plugins.menuentryswapper.util.XericsTalismanMode; - +import net.runelite.client.plugins.menuentryswapper.util.teleEquippedMode; +import net.runelite.client.plugins.menuentryswapper.util.CharterOption; @ConfigGroup("menuentryswapper") @@ -210,11 +211,37 @@ public interface MenuEntrySwapperConfig extends Config return false; } + @ConfigItem( + keyName = "teleEquippedCape", + name = "Teleport Equipped Cape", + description = "Makes Teleport/Tele to POH the left click option on equip screen", + position = 12, + group = "Equipment swapper" + ) + default boolean teleEquippedCape() + { + return false; + } + + @ConfigItem( + keyName = "telecapeMode", + name = "ModeTeleCape", + description = "", + position = 13, + group = "Equipment swapper", + hidden = true, + unhide = "teleEquippedCape" + ) + default teleEquippedMode telecapeMode() + { + return teleEquippedMode.TELEPORT; + } + @ConfigItem( keyName = "maxMode", name = "Mode", description = "", - position = 12, + position = 14, group = "Equipment swapper", hidden = true, unhide = "swapMax" @@ -228,7 +255,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapArdougneCape", name = "Swap Ardougne Cape", description = "Enables swapping of 'Teleport' and 'Wear'.", - position = 13, + position = 15, group = "Equipment swapper" ) default boolean getSwapArdougneCape() @@ -240,7 +267,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapConstructionCape", name = "Swap Construction Cape", description = "Enables swapping of 'Teleport' and 'Wear'.", - position = 14, + position = 16, group = "Equipment swapper" ) default boolean getSwapConstructionCape() @@ -252,7 +279,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapCraftingCape", name = "Swap Crafting Cape", description = "Enables swapping of 'Teleport' and 'Wear'.", - position = 15, + position = 17, group = "Equipment swapper" ) default boolean getSwapCraftingCape() @@ -264,7 +291,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapMagicCape", name = "Swap Magic Cape", description = "Enables swapping of 'Spellbook' and 'Wear'.", - position = 16, + position = 18, group = "Equipment swapper" ) default boolean getSwapMagicCape() @@ -276,7 +303,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapExplorersRing", name = "Swap Explorer's Ring", description = "Enables swapping of 'Spellbook' and 'Wear'.", - position = 17, + position = 19, group = "Equipment swapper" ) default boolean getSwapExplorersRing() @@ -288,7 +315,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapAdmire", name = "Admire", description = "Swap 'Admire' with 'Teleport', 'Spellbook' and 'Perks' (max cape) for mounted skill capes.", - position = 18, + position = 20, group = "Equipment swapper" ) default boolean swapAdmire() @@ -300,7 +327,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapQuestCape", name = "Swap Quest Cape", description = "Enables swapping Quest cape options in worn interface.", - position = 19, + position = 21, group = "Equipment swapper" ) default boolean swapQuestCape() @@ -312,7 +339,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "questCapeMode", name = "Mode", description = "", - position = 20, + position = 22, group = "Equipment swapper", hidden = true, unhide = "swapQuestCape" @@ -328,7 +355,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "customSwaps", name = "Custom Swaps", description = "Add custom swaps here, 1 per line. Syntax: option, target : option, target
Note that the first entry should be the left click one!", - position = 19, + position = 23, group = "Miscellaneous", parse = true, clazz = Parse.class, @@ -343,7 +370,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "shiftClickCustomization", name = "Customizable Shift-click", description = "Allows customization of shift-clicks on items.", - position = 20, + position = 24, group = "Miscellaneous" ) default boolean shiftClickCustomization() @@ -351,11 +378,23 @@ public interface MenuEntrySwapperConfig extends Config return true; } + @ConfigItem( + keyName = "swapCoalBag", + name = "Swap Coal Bag Empty", + description = "Makes Empty the left click option when in a bank", + position = 25, + group = "Miscellaneous" + ) + default boolean swapCoalBag() + { + return true; + } + @ConfigItem( keyName = "swapBirdhouseEmpty", name = "Birdhouse", description = "Swap 'Interact' with 'Empty' for birdhouses on Fossil Island.", - position = 21, + position = 26, group = "Miscellaneous" ) default boolean swapBirdhouseEmpty() @@ -367,7 +406,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBones", name = "Bury", description = "Swap 'Bury' with 'Use' on Bones.", - position = 22, + position = 27, group = "Miscellaneous" ) default boolean swapBones() @@ -379,7 +418,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapChase", name = "Chase", description = "Allows to left click your cat to chase rats.", - position = 23, + position = 28, group = "Miscellaneous" ) default boolean swapChase() @@ -391,7 +430,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapHarpoon", name = "Harpoon", description = "Swap 'Cage', 'Big Net' with 'Harpoon' on Fishing spots.", - position = 24, + position = 29, group = "Miscellaneous" ) default boolean swapHarpoon() @@ -403,7 +442,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapOccult", name = "Occult Altar", description = "Swap 'Venerate' with 'Ancient', 'Lunar', or 'Arceuus' on an Altar of the Occult.", - position = 25, + position = 30, group = "Miscellaneous" ) default boolean swapOccult() @@ -415,7 +454,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "occultalter", name = "Mode", description = "", - position = 26, + position = 31, group = "Miscellaneous", hidden = true, unhide = "swapOccult" @@ -429,7 +468,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapHomePortal", name = "Home", description = "Swap 'Enter' with 'Home', 'Build' or 'Friend's house' on Portal.", - position = 27, + position = 32, group = "Miscellaneous" ) default boolean swapHomePortal() @@ -441,7 +480,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "home", name = "Mode", description = "", - position = 28, + position = 33, group = "Miscellaneous", hidden = true, unhide = "swapHomePortal" @@ -455,7 +494,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapPrivate", name = "Private", description = "Swap 'Shared' with 'Private' on the Chambers of Xeric storage units.", - position = 29, + position = 34, group = "Miscellaneous" ) default boolean swapPrivate() @@ -467,7 +506,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapPick", name = "Pick", description = "Swap 'Pick' with 'Pick-lots' of the Gourd tree in the Chambers of Xeric.", - position = 30, + position = 35, group = "Miscellaneous" ) default boolean swapPick() @@ -479,7 +518,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapQuick", name = "Quick Pass/Open/Start/Travel", description = "Swap 'Pass' with 'Quick-Pass', 'Open' with 'Quick-Open', 'Ring' with 'Quick-Start' and 'Talk-to' with 'Quick-Travel'.", - position = 31, + position = 36, group = "Miscellaneous" ) default boolean swapQuick() @@ -491,7 +530,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBoxTrap", name = "Reset", description = "Swap 'Check' with 'Reset' on box traps.", - position = 32, + position = 37, group = "Miscellaneous" ) default boolean swapBoxTrap() @@ -503,7 +542,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "rockCake", name = "Rock Cake Guzzle", description = "Enables Left Click 'Guzzle' on the Dwarven Rock Cake.", - position = 33, + position = 38, group = "Miscellaneous" ) default boolean rockCake() @@ -515,7 +554,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapRogueschests", name = "Rogues Chests", description = "Swap Rogues Chests from 'Open' to 'Search for traps'.", - position = 34, + position = 39, group = "Miscellaneous" ) default boolean swapRogueschests() @@ -527,7 +566,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapClimbUpDown", name = "Climb", description = "Swap 'Climb-Up'/'Climb-Down' depending on Shift or Control key.", - position = 35, + position = 40, group = "Miscellaneous" ) default boolean swapClimbUpDown() @@ -539,7 +578,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapStun", name = "Stun Hoop Snakes", description = "Swap 'Attack' with 'Stun'.", - position = 36, + position = 41, group = "Miscellaneous" ) default boolean swapStun() @@ -551,7 +590,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSearch", name = "Search", description = "Swap 'Close', 'Shut' with 'Search' on chests, cupboards, etc.", - position = 37, + position = 42, group = "Miscellaneous" ) default boolean swapSearch() @@ -563,7 +602,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapHardWoodGrove", name = "Hardwood Grove", description = "Swap 'Quick-Pay(100)' and 'Send-Parcel' at Hardwood Grove.", - position = 38, + position = 43, group = "Miscellaneous" ) default boolean swapHardWoodGrove() @@ -576,7 +615,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "removeObjects", name = "Remove Objects", description = "Removes interaction with the listed objects.", - position = 39, + position = 44, group = "Miscellaneous" ) default boolean getRemoveObjects() @@ -588,7 +627,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "removedObjects", name = "Objects", description = "Objects listed here will have all interaction be removed.", - position = 40, + position = 45, group = "Miscellaneous", hidden = true, unhide = "removeObjects" @@ -602,7 +641,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapslayer", name = "Swap Slayer Ring", description = "", - position = 41, + position = 46, group = "Teleportation" ) default boolean getSlayerRing() @@ -614,7 +653,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "slayerringmode", name = "Mode", description = "", - position = 42, + position = 47, group = "Teleportation", hidden = true, unhide = "swapslayer" @@ -630,7 +669,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBuyOne", name = "Swappable Buy One", description = "", - position = 43, + position = 48, group = "Shop / stores" ) default boolean getSwapBuyOne() @@ -643,7 +682,7 @@ public interface MenuEntrySwapperConfig extends Config name = "Items", description = "", group = "Shop / stores", - position = 44, + position = 49, hidden = true, unhide = "swapBuyOne" ) @@ -656,7 +695,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBuyFive", name = "Swappable Buy Five", description = "", - position = 45, + position = 50, group = "Shop / stores" ) default boolean getSwapBuyFive() @@ -668,7 +707,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "buyFiveItems", name = "Items", description = "", - position = 46, + position = 51, group = "Shop / stores", hidden = true, unhide = "swapBuyFive" @@ -682,7 +721,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBuyTen", name = "Swappable Buy Ten", description = "", - position = 47, + position = 52, group = "Shop / stores" ) default boolean getSwapBuyTen() @@ -694,7 +733,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "buyTenItems", name = "Items", description = "", - position = 48, + position = 53, group = "Shop / stores", hidden = true, unhide = "swapBuyTen" @@ -708,7 +747,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapBuyFifty", name = "Swappable Buy Fifty", description = "", - position = 49, + position = 54, group = "Shop / stores" ) default boolean getSwapBuyFifty() @@ -720,7 +759,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "buyFiftyItems", name = "Items", description = "", - position = 50, + position = 55, group = "Shop / stores", hidden = true, unhide = "swapBuyFifty" @@ -734,7 +773,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSellOne", name = "Swappable Sell One", description = "", - position = 51, + position = 56, group = "Shop / stores" ) default boolean getSwapSellOne() @@ -746,7 +785,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "sellOneItems", name = "Items", description = "", - position = 52, + position = 57, group = "Shop / stores", hidden = true, unhide = "swapSellOne" @@ -760,7 +799,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSellFive", name = "Swappable Sell Five", description = "", - position = 53, + position = 58, group = "Shop / stores" ) default boolean getSwapSellFive() @@ -772,7 +811,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "sellFiveItems", name = "Items", description = "", - position = 54, + position = 59, group = "Shop / stores", hidden = true, unhide = "swapSellFive" @@ -786,7 +825,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSellTen", name = "Swappable Sell Ten", description = "", - position = 55, + position = 60, group = "Shop / stores" ) default boolean getSwapSellTen() @@ -798,7 +837,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "sellTenItems", name = "Items", description = "", - position = 56, + position = 61, group = "Shop / stores", hidden = true, unhide = "swapSellTen" @@ -812,7 +851,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSellFifty", name = "Swappable Sell Fifty", description = "", - position = 57, + position = 62, group = "Shop / stores" ) default boolean getSwapSellFifty() @@ -824,7 +863,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "sellFiftyItems", name = "Items", description = "", - position = 58, + position = 63, group = "Shop / stores", hidden = true, unhide = "swapSellFifty" @@ -866,7 +905,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "getTempConstruction", name = "Easy Construction", description = "Makes 'Remove'/'Build' the default option for listed items.", - position = 59, + position = 64, group = "Skilling" ) @@ -879,7 +918,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "getTempConstructionItems", name = "Build Items", description = "", - position = 60, + position = 65, group = "Skilling", hidden = true, unhide = "getTempConstruction" @@ -893,7 +932,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSmithing", name = "Swap Smithing", description = "Enables swapping of 'Smith-1' and 'Smith-all' options.", - position = 61, + position = 66, group = "Skilling" ) default boolean getSwapSmithing() @@ -905,7 +944,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapTanning", name = "Swap Tanning", description = "Enables swapping of 'Tan-1' and 'Tan-all' options.", - position = 62, + position = 67, group = "Skilling" ) default boolean getSwapTanning() @@ -917,7 +956,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSawmill", name = "Swap Sawmill Operator", description = "Makes 'Buy-plank' the default option on the Sawmill Operator.", - position = 63, + position = 68, group = "Skilling" ) default boolean getSwapSawmill() @@ -929,7 +968,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSawmillPlanks", name = "Swap Buy Planks", description = "Makes 'Buy All' the default option when buying planks.", - position = 64, + position = 69, group = "Skilling" ) default boolean getSwapSawmillPlanks() @@ -941,7 +980,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapPuroPuro", name = "Swap Puro-Puro Wheat", description = "", - position = 65, + position = 70, group = "Skilling" ) default boolean getSwapPuro() @@ -955,7 +994,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapAssignment", name = "Assignment", description = "Swap 'Talk-to' with 'Assignment' for Slayer Masters. This will take priority over swapping Trade.", - position = 66, + position = 71, group = "Talk-To" ) default boolean swapAssignment() @@ -964,13 +1003,13 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "swapBanker", - name = "Bank", - description = "Swap 'Talk-to' with 'Bank' on Bank NPCs.
Example: Banker.", - position = 67, + keyName = "swapBankExchange", + name = "Bank/Exchange", + description = "Swap Talk-to with Bank or Exchange on NPC
Example: Banker, Grand Exchange Clerk, Tool Leprechaun, Void Knight", + position = 72, group = "Talk-To" ) - default boolean swapBank() + default boolean swapBankExchange() { return true; } @@ -979,7 +1018,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapContract", name = "Contract", description = "Swap 'Talk-to' with 'Contract' on Guildmaster Jane.", - position = 68, + position = 73, group = "Talk-To" ) default boolean swapContract() @@ -987,71 +1026,24 @@ public interface MenuEntrySwapperConfig extends Config return true; } - @ConfigItem( - keyName = "claimDynamite", - name = "Claim Dynamite", - description = "Swap 'Talk-to' with 'Claim Dynamite' on Thirus.", - position = 69, - group = "Talk-To" - ) - default boolean claimDynamite() - { - return true; - } @ConfigItem( - keyName = "claimSlime", - name = "Claim Slime", - description = "Swap 'Talk-to' with 'Claim Slime' from Morytania diaries.", - position = 70, + keyName = "swapInteract", + name = "Interact", + description = "Swap options for generic interactions on NPCs
Example: Decant for Bob Barter, Repairs for Dark Mage, Claim Slime for Robin, Claim Dynamite", + position = 74, group = "Talk-To" ) - default boolean claimSlime() - { - return true; - } - - @ConfigItem( - keyName = "swapDarkMage", - name = "Repairs", - description = "Swap 'Talk-to' with 'Repairs' for Dark Mage.", - position = 71, - group = "Talk-To" - ) - default boolean swapDarkMage() - { - return true; - } - - @ConfigItem( - keyName = "swapDecant", - name = "Decant", - description = "Swap 'Talk-to' with 'Decant' for Bob Barter and Murky Matt at the Grand Exchange.", - position = 72, - group = "Talk-To" - ) - default boolean swapDecant() + default boolean swapInteract() { return false; } - @ConfigItem( - keyName = "swapExchange", - name = "Exchange", - description = "Swap 'Talk-to' with 'Exchange' on various NPCs.
Example: Grand Exchange Clerk, Tool Leprechaun, Void Knight.", - position = 73, - group = "Talk-To" - ) - default boolean swapExchange() - { - return true; - } - @ConfigItem( keyName = "swapPickpocket", - name = "Pickpocket on H.A.M.", - description = "Swap 'Talk-to' with 'Pickpocket' on H.A.M members.", - position = 74, + name = "Pickpocket", + description = "Swap Talk-to with Pickpocket on NPC
Example: Man, Woman", + position = 75, group = "Talk-To" ) default boolean swapPickpocket() @@ -1063,7 +1055,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapPay", name = "Pay", description = "Swap 'Talk-to' with 'Pay' on various NPCs.
Example: Elstan, Heskel, Fayeth.", - position = 75, + position = 76, group = "Talk-To" ) default boolean swapPay() @@ -1075,7 +1067,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapAbyssTeleport", name = "Teleport to Abyss", description = "Swap 'Talk-to' with 'Teleport' for the Mage of Zamorak.", - position = 76, + position = 77, group = "Talk-To" ) default boolean swapAbyssTeleport() @@ -1087,7 +1079,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapTrade", name = "Trade", description = "Swap 'Talk-to' with 'Trade' on various NPCs.
Example: Shop keeper, Shop assistant.", - position = 77, + position = 78, group = "Talk-To" ) default boolean swapTrade() @@ -1096,11 +1088,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "swapTravel", - name = "Travel", - description = "Swap 'Talk-to' with 'Travel', 'Take-boat', 'Pay-fare', 'Charter' on various NPCs.
Example: Squire, Monk of Entrana, Customs officer, Trader Crewmember.", - position = 78, - group = "Talk-To" + keyName = "swapTravel", + name = "Travel", + description = "Swap 'Talk-to' with 'Travel', 'Take-boat', 'Pay-fare', 'Charter' on various NPCs.
Example: Squire, Monk of Entrana, Customs officer, Trader Crewmember.", + position = 79, + group = "Talk-To" ) default boolean swapTravel() { @@ -1108,25 +1100,13 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "swapDream", - name = "Dream", - description = "Swap 'Talk-to' with 'Dream' for Dominic Onion.", - position = 79, - group = "Talk-To" + keyName = "swapMinigame", + name = "Minigames", + description = "Swap Talk-to with Start-Minigame, Story, Dream on NPC
Example: Guardian mummy, Juna, Dominic Onion", + position = 80, + group = "Talk-To" ) - default boolean swapDream() - { - return true; - } - - @ConfigItem( - keyName = "swapStory", - name = "Story", - description = "Swap 'Talk-to' with 'Story' for Juna at Tears of Guthix.", - position = 80, - group = "Talk-To" - ) - default boolean swapStory() + default boolean swapMinigame() { return true; } @@ -1156,13 +1136,13 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "swapEscort", - name = "Escort", - description = "Swap 'Talk-to' with 'Escort' for the Temple Trekking mini-game.", - position = 83, + keyName = "swapEnchant", + name = "Enchant", + description = "Swap Talk-to with Enchant for Eluned", + position = 82, group = "Talk-To" ) - default boolean swapEscort() + default boolean swapEnchant() { return true; } @@ -1173,7 +1153,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapFairyRing", name = "Fairy Ring", description = "Swap 'Zanaris' with 'Last-destination' or 'Configure' on Fairy rings.", - position = 84, + position = 83, group = "Teleportation" ) default boolean swapFairyRing() @@ -1185,7 +1165,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "fairyring", name = "Mode", description = "", - position = 85, + position = 84, group = "Teleportation", hidden = true, unhide = "swapFairyRing" @@ -1199,7 +1179,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapObelisk", name = "Obelisk", description = "Swap the options on wilderness obelisks between 'Activate', 'Set destination' or 'Teleport to destination'.", - position = 86, + position = 85, group = "Teleportation" ) default boolean swapObelisk() @@ -1211,7 +1191,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "obelisk", name = "Mode", description = "", - position = 87, + position = 86, group = "Teleportation", hidden = true, unhide = "swapObelisk" @@ -1225,7 +1205,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapTeleportItem", name = "Teleport Items", description = "Swap 'Wear' or 'Wield' with 'Rub' or 'Teleport' on teleport items.
Example: Amulet of glory, Explorer's ring, Chronicle.", - position = 88, + position = 87, group = "Teleportation" ) default boolean swapTeleportItem() @@ -1237,7 +1217,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapWildernessLever", name = "Wilderness Lever", description = "Swap the wilderness lever left click to be Edgeville/Ardougne.", - position = 89, + position = 88, group = "Teleportation" ) default boolean swapWildernessLever() @@ -1249,7 +1229,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapNexus", name = "Portal Nexus", description = "Makes the teleport menu have priority over the left click destination on the portal nexus.", - position = 90, + position = 99, group = "Teleportation" ) default boolean swapNexus() @@ -1261,7 +1241,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapGamesNecklace", name = "Swap Games Necklace", description = "Swap the left click 'remove' option with the desired teleport location on a worn Games Necklace.", - position = 91, + position = 100, group = "Teleportation" ) default boolean getGamesNecklace() @@ -1273,7 +1253,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "gamesNecklaceMode", name = "Mode", description = "", - position = 92, + position = 101, group = "Teleportation", hidden = true, unhide = "swapGamesNecklace" @@ -1287,7 +1267,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapDuelingRing", name = "Swap Dueling Ring", description = "Swap the left click 'remove' option with the desired teleport location on a worn Ring of Dueling.", - position = 93, + position = 102, group = "Teleportation" ) default boolean getDuelingRing() @@ -1299,7 +1279,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "duelingRingMode", name = "Mode", description = "", - position = 94, + position = 103, group = "Teleportation", hidden = true, unhide = "swapDuelingRing" @@ -1313,7 +1293,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapGlory", name = "Swap Glory", description = "Swap the left click 'remove' option with the desired teleport location on a worn Amulet of Glory / Amulet of Eternal Glory.", - position = 95, + position = 104, group = "Teleportation" ) default boolean getGlory() @@ -1325,7 +1305,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "gloryMode", name = "Mode", description = "", - position = 96, + position = 105, group = "Teleportation", hidden = true, unhide = "swapGlory" @@ -1339,7 +1319,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapSkill", name = "Swap Skill", description = "Swap the left click 'remove' option with the desired teleport location on a worn Skills Necklace.", - position = 97, + position = 106, group = "Teleportation" ) default boolean getSkillsNecklace() @@ -1351,7 +1331,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "skillsnecklacemode", name = "Mode", description = "", - position = 98, + position = 107, group = "Teleportation", hidden = true, unhide = "swapSkill" @@ -1365,7 +1345,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapPassage", name = "Swap Passage", description = "Swap the left click 'remove' option with the desired teleport location on a worn Necklace of Passage.", - position = 99, + position = 108, group = "Teleportation" ) default boolean getNecklaceofPassage() @@ -1377,7 +1357,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "necklaceofpassagemode", name = "Mode", description = "", - position = 100, + position = 109, group = "Teleportation", hidden = true, unhide = "swapPassage" @@ -1391,7 +1371,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapDigsite", name = "Swap Digsite", description = "Swap the left click 'remove' option with the desired teleport location on a worn Digsite Pendant.", - position = 101, + position = 110, group = "Teleportation" ) default boolean getDigsitePendant() @@ -1403,7 +1383,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "digsitependantmode", name = "Mode", description = "", - position = 102, + position = 111, group = "Teleportation", hidden = true, unhide = "swapDigsite" @@ -1417,7 +1397,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapCombat", name = "Swap Combat", description = "Swap the left click 'remove' option with the desired teleport location on a worn Combat Bracelet.", - position = 103, + position = 112, group = "Teleportation" ) default boolean getCombatBracelet() @@ -1429,7 +1409,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "combatbraceletmode", name = "Mode", description = "", - position = 104, + position = 113, group = "Teleportation", hidden = true, unhide = "swapCombat" @@ -1443,7 +1423,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapburning", name = "Swap Burning", description = "Swap the left click 'remove' option with the desired teleport location on a worn Burning Amulet.", - position = 105, + position = 114, group = "Teleportation" ) default boolean getBurningAmulet() @@ -1455,7 +1435,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "burningamuletmode", name = "Mode", description = "", - position = 106, + position = 115, group = "Teleportation", hidden = true, unhide = "swapburning" @@ -1469,7 +1449,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapxeric", name = "Swap Xeric's", description = "Swap the left click 'remove' option with the desired teleport location on a worn Xeric's Talisman.", - position = 107, + position = 116, group = "Teleportation" ) default boolean getXericsTalisman() @@ -1481,7 +1461,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "xericstalismanmode", name = "Mode", description = "", - position = 108, + position = 117, group = "Teleportation", hidden = true, unhide = "swapxeric" @@ -1495,7 +1475,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "swapwealth", name = "Swap Wealth", description = "Swap the left click 'remove' option with the desired teleport location on a worn Ring of Wealth.", - position = 109, + position = 118, group = "Teleportation" ) default boolean getRingofWealth() @@ -1507,7 +1487,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "ringofwealthmode", name = "Mode", description = "", - position = 110, + position = 119, group = "Teleportation", hidden = true, unhide = "swapwealth" @@ -1523,7 +1503,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideExamine", name = "Hide Examine", description = "Hides the 'Examine' option from the right click menu.", - position = 111, + position = 120, group = "Right Click Options" ) default boolean hideExamine() @@ -1535,7 +1515,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideTradeWith", name = "Hide Trade With", description = "Hides the 'Trade with' option from the right click menu.", - position = 112, + position = 121, group = "Right Click Options" ) default boolean hideTradeWith() @@ -1547,7 +1527,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideReport", name = "Hide Report", description = "Hides the 'Report' option from the right click menu.", - position = 113, + position = 122, group = "Right Click Options" ) default boolean hideReport() @@ -1559,7 +1539,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideLookup", name = "Hide Lookup", description = "Hides the 'Lookup' option from the right click menu.", - position = 114, + position = 123, group = "Right Click Options" ) default boolean hideLookup() @@ -1571,7 +1551,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideNet", name = "Hide Net", description = "Hides the 'Net' option from the right click menu.", - position = 115, + position = 124, group = "Right Click Options" ) default boolean hideNet() @@ -1583,7 +1563,7 @@ public interface MenuEntrySwapperConfig extends Config keyName = "hideBait", name = "Hide Bait", description = "Hides the 'Bait' option from the right click menu.", - position = 116, + position = 125, group = "Right Click Options" ) default boolean hideBait() @@ -1594,11 +1574,11 @@ public interface MenuEntrySwapperConfig extends Config //----------------------Untradeables---------------------------// @ConfigItem( - keyName = "hideDestroyRunepouch", - name = "Hide Destroy on Rune Pouch", - description = "Hides the 'Destroy' option when right clicking a Rune pouch.", - position = 117, - group = "Untradeables" + keyName = "hideDestroyRunepouch", + name = "Hide Destroy on Rune Pouch", + description = "Hides the 'Destroy' option when right clicking a Rune pouch.", + position = 126, + group = "Untradeables" ) default boolean hideDestroyRunepouch() { @@ -1606,11 +1586,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "hideDestroyCoalbag", - name = "Hide Destroy on Coal bag", - description = "Hides the 'Destroy' option when right clicking a Coal bag.", - position = 118, - group = "Untradeables" + keyName = "hideDestroyCoalbag", + name = "Hide Destroy on Coal bag", + description = "Hides the 'Destroy' option when right clicking a Coal bag.", + position = 127, + group = "Untradeables" ) default boolean hideDestroyCoalbag() { @@ -1618,11 +1598,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "hideDestroyHerbsack", - name = "Hide Destroy on Herb sack", - description = "Hides the 'Destroy' option when right clicking a Herb sack.", - position = 119, - group = "Untradeables" + keyName = "hideDestroyHerbsack", + name = "Hide Destroy on Herb sack", + description = "Hides the 'Destroy' option when right clicking a Herb sack.", + position = 128, + group = "Untradeables" ) default boolean hideDestroyHerbsack() { @@ -1630,11 +1610,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "hideDestroyBoltpouch", - name = "Hide Destroy on Bolt pouch", - description = "Hides the 'Destroy' option when right clicking a Bolt pouch.", - position = 120, - group = "Untradeables" + keyName = "hideDestroyBoltpouch", + name = "Hide Destroy on Bolt pouch", + description = "Hides the 'Destroy' option when right clicking a Bolt pouch.", + position = 129, + group = "Untradeables" ) default boolean hideDestroyBoltpouch() { @@ -1642,11 +1622,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "hideDestroyGembag", - name = "Hide Destroy on Gem bag", - description = "Hides the 'Destroy' option when right clicking a Gem bag.", - position = 121, - group = "Untradeables" + keyName = "hideDestroyGembag", + name = "Hide Destroy on Gem bag", + description = "Hides the 'Destroy' option when right clicking a Gem bag.", + position = 130, + group = "Untradeables" ) default boolean hideDestroyGembag() { @@ -1654,11 +1634,11 @@ public interface MenuEntrySwapperConfig extends Config } @ConfigItem( - keyName = "hideDropRunecraftingPouch", - name = "Hide Drop on RC pouches", - description = "Hides the 'Drop' option when right clicking a Small, Medium, Large, or Giant pouch.", - position = 122, - group = "Untradeables" + keyName = "hideDropRunecraftingPouch", + name = "Hide Drop on RC pouches", + description = "Hides the 'Drop' option when right clicking a Small, Medium, Large, or Giant pouch.", + position = 131, + group = "Untradeables" ) default boolean hideDropRunecraftingPouch() { @@ -1668,16 +1648,28 @@ public interface MenuEntrySwapperConfig extends Config //------------------------------------------------------------// @ConfigItem( - keyName = "swapImps", - name = "Impling Jars", - description = "Don't open implings if bank has a clue.", - position = 123, - group = "Miscellaneous" + keyName = "swapImps", + name = "Impling Jars", + description = "Don't open implings if bank has a clue.", + position = 132, + group = "Miscellaneous" ) default boolean swapImps() { return false; } + @ConfigItem( + keyName = "charterOption", + name = "Trader Crew", + description = "Configure whether you want Charter or Trade to be the first option of Trader Crewmembers.", + position = 133, + group = "Miscellaneous" + ) + default CharterOption charterOption() + { + return CharterOption.TRADE; + } + //------------------------------------------------------------// } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java index c75a8859ef..7619f61394 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java @@ -81,6 +81,7 @@ import net.runelite.client.plugins.menuentryswapper.util.FairyRingMode; import net.runelite.client.plugins.menuentryswapper.util.HouseMode; import net.runelite.client.plugins.menuentryswapper.util.ObeliskMode; import net.runelite.client.plugins.menuentryswapper.util.OccultAltarMode; +import net.runelite.client.plugins.menuentryswapper.util.CharterOption; import static net.runelite.client.util.MenuUtil.swap; import net.runelite.client.util.MiscUtils; import net.runelite.client.util.Text; @@ -902,23 +903,19 @@ public class MenuEntrySwapperPlugin extends Plugin if (option.equals("talk-to")) { - if (config.swapPickpocket() && target.contains("h.a.m.")) + if (config.swapPickpocket()) { swap(client, "pickpocket", option, target, true); } - if (config.swapAbyssTeleport() && target.contains("mage of zamorak")) - { - swap(client, "teleport", option, target, true); - } - if (config.swapHardWoodGrove() && target.contains("rionasta")) { swap(client, "send-parcel", option, target, true); } - if (config.swapBank()) + if (config.swapBankExchange()) { swap(client, "bank", option, target, true); + swap(client, "exchange", option, target, true); } if (config.swapContract()) @@ -926,14 +923,14 @@ public class MenuEntrySwapperPlugin extends Plugin swap(client, "contract", option, target, true); } - if (config.swapExchange()) - { - swap(client, "exchange", option, target, true); - } - - if (config.swapDarkMage()) + if (config.swapInteract()) { swap(client, "repairs", option, target, true); + swap(client, "claim-slime", option, target, true); + swap(client, "decant", option, target, true); + swap(client, "claim", option, target, true); + swap(client, "heal", option, target, true); + swap(client, "help", option, target, true); } // make sure assignment swap is higher priority than trade swap for slayer masters @@ -947,21 +944,19 @@ public class MenuEntrySwapperPlugin extends Plugin swap(client, "buy-plank", option, target, true); } - if (config.claimDynamite() && target.equals("thirus")) - { - swap(client, "claim", option, target, true); - } - - if (config.swapTrade()) + if (config.swapTrade() && (!(target.equals("trader crewmember") || target.equals("trader stan")) || config.charterOption().equals(CharterOption.TRADE))) { swap(client, "trade", option, target, true); swap(client, "trade-with", option, target, true); swap(client, "shop", option, target, true); } - if (config.claimSlime() && target.equals("robin")) + if (config.swapMinigame()) { - swap(client, "claim-slime", option, target, true); + swap(client, "story", option, target, true); + swap(client, "escort", option, target, true); + swap(client, "dream", option, target, true); + swap(client, "start-minigame", option, target, true); } if (config.swapTravel()) @@ -976,6 +971,16 @@ public class MenuEntrySwapperPlugin extends Plugin swap(client, "rellekka", option, target, true); swap(client, "follow", option, target, true); swap(client, "transport", option, target, true); + + if (config.swapAbyssTeleport() && target.contains("mage of zamorak")) + { + swap(client, "teleport", option, target, true); + } + + if (!(target.equals("trader crewmember") || target.equals("trader stan")) || config.charterOption().equals(CharterOption.CHARTER)) + { + swap(client, "charter", option, target, true); + } } if (config.swapPay()) @@ -984,30 +989,16 @@ public class MenuEntrySwapperPlugin extends Plugin swap(client, "pay (", option, target, false); } - if (config.swapDream()) - { - swap(client, "dream", option, target, true); - } - - if (config.swapDecant()) - { - swap(client, "decant", option, target, true); - } - if (config.swapQuick()) { swap(client, "quick-travel", option, target, true); } - if (config.swapStory()) + if (config.swapEnchant()) { - swap(client, "story", option, target, true); + swap(client, "enchant", option, target, true); } - if (config.swapEscort()) - { - swap(client, "escort", option, target, true); - } } else if (config.swapWildernessLever() && target.equals("lever") && option.equals("ardougne")) @@ -1025,18 +1016,9 @@ public class MenuEntrySwapperPlugin extends Plugin swap(client, "stun", option, target, true); } - else if (config.swapTravel() && option.equals("pass") && target.equals("energy barrier")) + else if (config.swapTravel() && (option.equals("pass") || option.equals("open"))) { - swap(client, "pay-toll(2-ecto)", option, target, true); - } - - else if (config.swapTravel() && option.equals("open") && target.equals("gate")) - { - swap(client, "pay-toll(10gp)", option, target, true); - } - else if (config.swapHardWoodGrove() && option.equals("open") && target.equals("hardwood grove doors")) - { - swap(client, "quick-pay(100)", option, target, true); + swap(client, "pay-toll", option, target, false); } else if (config.swapTravel() && option.equals("inspect") && target.equals("trapdoor")) { @@ -1157,7 +1139,14 @@ public class MenuEntrySwapperPlugin extends Plugin { swap(client, "quick-open", option, target, true); } - + else if (config.swapQuick() && option.equals("enter")) + { + swap(client, "quick-enter", option, target, true); + } + else if (config.swapQuick() && option.equals("leave tomb")) + { + swap(client, "quick-leave", option, target, true); + } else if (config.swapAdmire() && option.equals("admire")) { swap(client, "teleport", option, target, true); @@ -1202,17 +1191,14 @@ public class MenuEntrySwapperPlugin extends Plugin } // Put all item-related swapping after shift-click - else if (config.swapTeleportItem() && option.equals("wear")) + else if (config.swapTeleportItem() && (option.equals("wear") || option.equals("wield"))) { swap(client, "rub", option, target, true); swap(client, "teleport", option, target, true); } - else if (option.equals("wield")) + else if (config.swapCoalBag() && option.contains("deposit") && target.equals("coal bag")) { - if (config.swapTeleportItem()) - { - swap(client, "teleport", option, target, true); - } + swap(client, "empty", option, target, true); } else if (config.swapBones() && option.equals("bury")) { @@ -1382,6 +1368,12 @@ public class MenuEntrySwapperPlugin extends Plugin menuManager.addSwap("remove", "burning amulet", config.getBurningAmuletMode().toString()); } + if (config.teleEquippedCape()) + { + menuManager.addSwap("remove", "tele to poh", config.telecapeMode().toString()); + menuManager.addSwap("remove", "teleport", config.telecapeMode().toString()); + } + if (config.getCombatBracelet()) { menuManager.addSwap("remove", "combat bracelet", config.getCombatBraceletMode().toString()); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/CharterOption.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/CharterOption.java new file mode 100644 index 0000000000..668d993dcb --- /dev/null +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/CharterOption.java @@ -0,0 +1,20 @@ +package net.runelite.client.plugins.menuentryswapper.util; + +public enum CharterOption +{ + TRADE("Trade"), + CHARTER("Charter"); + + private final String name; + + CharterOption(String name) + { + this.name = name; + } + + @Override + public String toString() + { + return name; + } +} \ No newline at end of file diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/teleEquippedMode.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/teleEquippedMode.java new file mode 100644 index 0000000000..9f22bcbc3e --- /dev/null +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/util/teleEquippedMode.java @@ -0,0 +1,20 @@ +package net.runelite.client.plugins.menuentryswapper.util; + +public enum teleEquippedMode +{ + TELE_TO_POH("Tele to POH"), + TELEPORT("teleport"); + + private final String name; + + teleEquippedMode(String name) + { + this.name = name; + } + + @Override + public String toString() + { + return name; + } +}