From 10782b5ea44a4c70a88f2f386749bf36918bdff3 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 14 Jan 2019 19:45:47 -0500 Subject: [PATCH] Add configure option to many overlays --- .../runelite/client/plugins/agility/AgilityOverlay.java | 1 + .../net/runelite/client/plugins/agility/AgilityPlugin.java | 6 ++++++ .../client/plugins/attackstyles/AttackStylesOverlay.java | 1 + .../client/plugins/attackstyles/AttackStylesPlugin.java | 5 +++++ .../plugins/barbarianassault/BarbarianAssaultOverlay.java | 1 + .../plugins/barbarianassault/BarbarianAssaultPlugin.java | 5 +++++ .../client/plugins/barrows/BarrowsBrotherSlainOverlay.java | 3 ++- .../net/runelite/client/plugins/barrows/BarrowsPlugin.java | 5 +++++ .../plugins/blastfurnace/BlastFurnaceCofferOverlay.java | 1 + .../client/plugins/blastfurnace/BlastFurnaceOverlay.java | 1 + .../client/plugins/blastfurnace/BlastFurnacePlugin.java | 6 ++++++ .../client/plugins/blastmine/BlastMineOreCountOverlay.java | 3 ++- .../runelite/client/plugins/blastmine/BlastMinePlugin.java | 4 ++++ .../net/runelite/client/plugins/boosts/BoostsOverlay.java | 1 + .../net/runelite/client/plugins/boosts/BoostsPlugin.java | 5 +++++ .../runelite/client/plugins/cerberus/CerberusOverlay.java | 1 + .../runelite/client/plugins/cerberus/CerberusPlugin.java | 4 ++++ .../client/plugins/cluescrolls/ClueScrollOverlay.java | 1 + .../client/plugins/cluescrolls/ClueScrollPlugin.java | 4 ++++ .../runelite/client/plugins/cooking/CookingOverlay.java | 1 + .../net/runelite/client/plugins/cooking/CookingPlugin.java | 4 ++++ .../runelite/client/plugins/corp/CorpDamageOverlay.java | 1 + .../java/net/runelite/client/plugins/corp/CorpPlugin.java | 4 ++++ .../runelite/client/plugins/fishing/FishingOverlay.java | 1 + .../net/runelite/client/plugins/fishing/FishingPlugin.java | 4 ++++ .../plugins/inventoryviewer/InventoryViewerOverlay.java | 3 ++- .../plugins/inventoryviewer/InventoryViewerPlugin.java | 4 ++++ .../client/plugins/motherlode/MotherlodeOverlay.java | 1 + .../client/plugins/motherlode/MotherlodePlugin.java | 7 +++++++ .../client/plugins/motherlode/MotherlodeSackOverlay.java | 1 + .../client/plugins/nightmarezone/NightmareZoneOverlay.java | 1 + .../client/plugins/nightmarezone/NightmareZonePlugin.java | 4 ++++ .../client/plugins/opponentinfo/OpponentInfoOverlay.java | 1 + .../client/plugins/opponentinfo/OpponentInfoPlugin.java | 6 ++++++ .../plugins/opponentinfo/PlayerComparisonOverlay.java | 1 + .../net/runelite/client/plugins/raids/RaidsOverlay.java | 1 + .../net/runelite/client/plugins/raids/RaidsPlugin.java | 6 ++++++ .../client/plugins/teamcapes/TeamCapesOverlay.java | 1 + .../runelite/client/plugins/teamcapes/TeamCapesPlugin.java | 4 ++++ .../client/plugins/wintertodt/WintertodtOverlay.java | 1 + .../client/plugins/wintertodt/WintertodtPlugin.java | 4 ++++ .../client/plugins/woodcutting/WoodcuttingOverlay.java | 1 + .../client/plugins/woodcutting/WoodcuttingPlugin.java | 6 ++++++ .../runelite/client/plugins/xpglobes/XpGlobesOverlay.java | 1 + .../runelite/client/plugins/xpglobes/XpGlobesPlugin.java | 4 ++++ 45 files changed, 128 insertions(+), 3 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java index 2e7509ccf3..bc6e953f6d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java @@ -52,6 +52,7 @@ class AgilityOverlay extends Overlay @Inject private AgilityOverlay(Client client, AgilityPlugin plugin, AgilityConfig config) { + super(plugin); setPosition(OverlayPosition.DYNAMIC); setLayer(OverlayLayer.ABOVE_SCENE); this.client = client; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java index cd60c6b940..7bda45b9bd 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java @@ -37,6 +37,7 @@ import net.runelite.api.Client; import net.runelite.api.Item; import net.runelite.api.ItemID; import static net.runelite.api.ItemID.AGILITY_ARENA_TICKET; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Player; import static net.runelite.api.Skill.AGILITY; import net.runelite.api.Tile; @@ -67,6 +68,7 @@ import net.runelite.client.game.ItemManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.ui.overlay.infobox.InfoBoxManager; @PluginDescriptor( @@ -126,11 +128,15 @@ public class AgilityPlugin extends Plugin { overlayManager.add(agilityOverlay); overlayManager.add(lapCounterOverlay); + + overlayManager.addMenu(lapCounterOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Agility overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(lapCounterOverlay, OPTION_CONFIGURE); + overlayManager.remove(agilityOverlay); overlayManager.remove(lapCounterOverlay); marksOfGrace.clear(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesOverlay.java index 1c1f70215a..5794af9c52 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesOverlay.java @@ -42,6 +42,7 @@ class AttackStylesOverlay extends Overlay @Inject private AttackStylesOverlay(AttackStylesPlugin plugin, AttackStylesConfig config) { + super(plugin); setPosition(OverlayPosition.ABOVE_CHATBOX_RIGHT); this.plugin = plugin; this.config = config; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesPlugin.java index 4b6de0ea1d..e4eca69942 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/attackstyles/AttackStylesPlugin.java @@ -33,6 +33,7 @@ import java.util.Set; import javax.inject.Inject; import net.runelite.api.Client; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Skill; import net.runelite.api.VarPlayer; import net.runelite.api.Varbits; @@ -54,6 +55,7 @@ import static net.runelite.client.plugins.attackstyles.AttackStyle.CASTING; import static net.runelite.client.plugins.attackstyles.AttackStyle.DEFENSIVE_CASTING; import static net.runelite.client.plugins.attackstyles.AttackStyle.OTHER; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Attack Styles", @@ -96,6 +98,8 @@ public class AttackStylesPlugin extends Plugin { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Attack style overlay"); + if (client.getGameState() == GameState.LOGGED_IN) { clientThread.invoke(this::start); @@ -123,6 +127,7 @@ public class AttackStylesPlugin extends Plugin @Override protected void shutDown() { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); hideWarnedStyles(false); processWidgets(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultOverlay.java index 451b614c2a..fd587b614f 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultOverlay.java @@ -51,6 +51,7 @@ class BarbarianAssaultOverlay extends Overlay @Inject private BarbarianAssaultOverlay(Client client, BarbarianAssaultPlugin plugin, BarbarianAssaultConfig config) { + super(plugin); setPosition(OverlayPosition.DYNAMIC); setLayer(OverlayLayer.ABOVE_WIDGETS); this.client = client; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultPlugin.java index b2dccee030..c224f13b66 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/barbarianassault/BarbarianAssaultPlugin.java @@ -32,6 +32,7 @@ import javax.inject.Inject; import net.runelite.api.ChatMessageType; import net.runelite.api.Client; import net.runelite.api.ItemID; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Varbits; import net.runelite.api.events.ChatMessage; import net.runelite.api.events.GameTick; @@ -51,6 +52,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.FontManager; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.util.ImageUtil; @PluginDescriptor( @@ -99,11 +101,14 @@ public class BarbarianAssaultPlugin extends Plugin .deriveFont(Font.BOLD, 24); clockImage = ImageUtil.getResourceStreamFromClass(getClass(), "clock.png"); + + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "B.A. overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); gameTime = null; currentWave = START_WAVE; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java index 08480ec37c..cefba16813 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java @@ -44,8 +44,9 @@ public class BarrowsBrotherSlainOverlay extends Overlay private final PanelComponent panelComponent = new PanelComponent(); @Inject - private BarrowsBrotherSlainOverlay(Client client) + private BarrowsBrotherSlainOverlay(BarrowsPlugin plugin, Client client) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); setPriority(OverlayPriority.LOW); this.client = client; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsPlugin.java index 014f7cda98..f174dda1c4 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsPlugin.java @@ -38,6 +38,7 @@ import net.runelite.api.GameState; import net.runelite.api.InventoryID; import net.runelite.api.Item; import net.runelite.api.ItemContainer; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.NullObjectID; import net.runelite.api.ObjectID; import net.runelite.api.WallObject; @@ -60,6 +61,7 @@ import net.runelite.client.game.ItemManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.util.StackFormatter; @PluginDescriptor( @@ -119,11 +121,14 @@ public class BarrowsPlugin extends Plugin { overlayManager.add(barrowsOverlay); overlayManager.add(brotherOverlay); + + overlayManager.addMenu(brotherOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Barrows overlay"); } @Override protected void shutDown() { + overlayManager.removeMenu(brotherOverlay, OPTION_CONFIGURE); overlayManager.remove(barrowsOverlay); overlayManager.remove(brotherOverlay); walls.clear(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceCofferOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceCofferOverlay.java index 67be1883d6..a4043e39b7 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceCofferOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceCofferOverlay.java @@ -46,6 +46,7 @@ class BlastFurnaceCofferOverlay extends Overlay @Inject private BlastFurnaceCofferOverlay(Client client, BlastFurnacePlugin plugin) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceOverlay.java index 1ffa14912d..f410df21e5 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnaceOverlay.java @@ -47,6 +47,7 @@ class BlastFurnaceOverlay extends Overlay @Inject BlastFurnaceOverlay(Client client, BlastFurnacePlugin plugin) { + super(plugin); this.plugin = plugin; this.client = client; setPosition(OverlayPosition.TOP_LEFT); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnacePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnacePlugin.java index af39f8912b..e484866539 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnacePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/blastfurnace/BlastFurnacePlugin.java @@ -30,6 +30,7 @@ import lombok.AccessLevel; import lombok.Getter; import net.runelite.api.GameObject; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import static net.runelite.api.NullObjectID.NULL_9092; import static net.runelite.api.ObjectID.CONVEYOR_BELT; import net.runelite.api.events.GameObjectDespawned; @@ -40,6 +41,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Blast Furnace", @@ -74,11 +76,15 @@ public class BlastFurnacePlugin extends Plugin overlayManager.add(overlay); overlayManager.add(cofferOverlay); overlayManager.add(clickBoxOverlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Blast furnace overlay"); + overlayManager.addMenu(cofferOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Coffer overlay"); } @Override protected void shutDown() { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); + overlayManager.removeMenu(cofferOverlay, OPTION_CONFIGURE); overlayManager.remove(overlay); overlayManager.remove(cofferOverlay); overlayManager.remove(clickBoxOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMineOreCountOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMineOreCountOverlay.java index 5256124334..9cf66f8a52 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMineOreCountOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMineOreCountOverlay.java @@ -47,8 +47,9 @@ class BlastMineOreCountOverlay extends Overlay private final PanelComponent panelComponent = new PanelComponent(); @Inject - private BlastMineOreCountOverlay(Client client, BlastMinePluginConfig config, ItemManager itemManager) + private BlastMineOreCountOverlay(BlastMinePlugin plugin, Client client, BlastMinePluginConfig config, ItemManager itemManager) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.config = config; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMinePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMinePlugin.java index 7ddc7e8a80..c68bb67369 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMinePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/blastmine/BlastMinePlugin.java @@ -32,6 +32,7 @@ import lombok.Getter; import net.runelite.api.Client; import net.runelite.api.GameObject; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.coords.WorldPoint; import net.runelite.api.events.GameObjectSpawned; import net.runelite.api.events.GameStateChanged; @@ -43,6 +44,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Blast Mine", @@ -77,11 +79,13 @@ public class BlastMinePlugin extends Plugin { overlayManager.add(blastMineRockOverlay); overlayManager.add(blastMineOreCountOverlay); + overlayManager.addMenu(blastMineOreCountOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Blast mine overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(blastMineOreCountOverlay, OPTION_CONFIGURE); overlayManager.remove(blastMineRockOverlay); overlayManager.remove(blastMineOreCountOverlay); final Widget blastMineWidget = client.getWidget(WidgetInfo.BLAST_MINE); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsOverlay.java index fed6bf2213..e43ed235e6 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsOverlay.java @@ -47,6 +47,7 @@ class BoostsOverlay extends Overlay @Inject private BoostsOverlay(Client client, BoostsConfig config, BoostsPlugin plugin) { + super(plugin); this.plugin = plugin; this.client = client; this.config = config; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsPlugin.java index 3e36dec592..da31ca307a 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/boosts/BoostsPlugin.java @@ -33,6 +33,7 @@ import javax.inject.Inject; import javax.inject.Singleton; import lombok.Getter; import net.runelite.api.Client; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Prayer; import net.runelite.api.Skill; import net.runelite.api.events.BoostedLevelChanged; @@ -46,6 +47,7 @@ import net.runelite.client.game.SkillIconManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.ui.overlay.infobox.InfoBoxManager; import net.runelite.client.util.ImageUtil; @@ -111,6 +113,8 @@ public class BoostsPlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(boostsOverlay); + overlayManager.addMenu(boostsOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Boosts overlay"); + updateShownSkills(); updateBoostedStats(); Arrays.fill(lastSkillLevels, -1); @@ -131,6 +135,7 @@ public class BoostsPlugin extends Plugin @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(boostsOverlay, OPTION_CONFIGURE); overlayManager.remove(boostsOverlay); infoBoxManager.removeIf(t -> t instanceof BoostIndicator || t instanceof StatChangeIndicator); preserveBeenActive = false; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusOverlay.java index 5ddbf21f7a..6bff4fbf7d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusOverlay.java @@ -44,6 +44,7 @@ public class CerberusOverlay extends Overlay @Inject CerberusOverlay(final CerberusPlugin plugin, final SkillIconManager iconManager) { + super(plugin); this.plugin = plugin; this.iconManager = iconManager; setPosition(OverlayPosition.BOTTOM_RIGHT); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusPlugin.java index 2087e31844..7f40cbfd77 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cerberus/CerberusPlugin.java @@ -32,6 +32,7 @@ import javax.inject.Inject; import javax.inject.Singleton; import lombok.Getter; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.NPC; import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameTick; @@ -41,6 +42,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Cerberus", @@ -63,11 +65,13 @@ public class CerberusPlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Cerberus overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); ghosts.clear(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollOverlay.java index 0b9839e28f..3ff67ad88b 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollOverlay.java @@ -46,6 +46,7 @@ public class ClueScrollOverlay extends Overlay @Inject public ClueScrollOverlay(ClueScrollPlugin plugin) { + super(plugin); this.plugin = plugin; setPriority(OverlayPriority.LOW); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java index 8a24153854..6d75fe9027 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java @@ -46,6 +46,7 @@ import net.runelite.api.InventoryID; import net.runelite.api.Item; import net.runelite.api.ItemComposition; import net.runelite.api.ItemID; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.NPC; import net.runelite.api.ObjectComposition; import net.runelite.api.Scene; @@ -84,6 +85,7 @@ import net.runelite.client.plugins.cluescrolls.clues.ObjectClueScroll; import net.runelite.client.plugins.cluescrolls.clues.TextClueScroll; import net.runelite.client.plugins.cluescrolls.clues.ThreeStepCrypticClue; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.ui.overlay.worldmap.WorldMapPointManager; import net.runelite.client.util.ImageUtil; import net.runelite.client.util.Text; @@ -161,11 +163,13 @@ public class ClueScrollPlugin extends Plugin overlayManager.add(clueScrollOverlay); overlayManager.add(clueScrollEmoteOverlay); overlayManager.add(clueScrollWorldOverlay); + overlayManager.addMenu(clueScrollOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Cluescroll overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(clueScrollOverlay, OPTION_CONFIGURE); overlayManager.remove(clueScrollOverlay); overlayManager.remove(clueScrollEmoteOverlay); overlayManager.remove(clueScrollWorldOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingOverlay.java index 122c793430..bc8890d7c3 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingOverlay.java @@ -57,6 +57,7 @@ class CookingOverlay extends Overlay @Inject private CookingOverlay(Client client, CookingPlugin plugin, CookingConfig config, XpTrackerService xpTrackerService) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingPlugin.java index 646e649bc2..c23bc8b305 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingPlugin.java @@ -32,6 +32,7 @@ import lombok.AccessLevel; import lombok.Getter; import com.google.inject.Provides; import net.runelite.api.ChatMessageType; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.events.ChatMessage; import net.runelite.api.events.GameTick; import net.runelite.client.config.ConfigManager; @@ -41,6 +42,7 @@ import net.runelite.client.plugins.PluginDependency; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.xptracker.XpTrackerPlugin; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Cooking", @@ -73,11 +75,13 @@ public class CookingPlugin extends Plugin { session = null; overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Cooking overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); session = null; } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpDamageOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpDamageOverlay.java index 0a6298ff57..91411e22f7 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpDamageOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpDamageOverlay.java @@ -54,6 +54,7 @@ class CorpDamageOverlay extends Overlay @Inject private CorpDamageOverlay(Client client, CorpPlugin corpPlugin, CorpConfig config) { + super(corpPlugin); setPosition(OverlayPosition.TOP_LEFT); setLayer(OverlayLayer.UNDER_WIDGETS); setPriority(OverlayPriority.LOW); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java index 85355142a1..7b117b0424 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java @@ -37,6 +37,7 @@ import net.runelite.api.Client; import net.runelite.api.GameState; import net.runelite.api.MenuAction; import static net.runelite.api.MenuAction.MENU_ACTION_DEPRIORITIZE_OFFSET; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.MenuEntry; import net.runelite.api.NPC; import net.runelite.api.NpcID; @@ -56,6 +57,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Corporeal Beast", @@ -112,11 +114,13 @@ public class CorpPlugin extends Plugin { overlayManager.add(corpOverlay); overlayManager.add(coreOverlay); + overlayManager.addMenu(corpOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Corp overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(corpOverlay, OPTION_CONFIGURE); overlayManager.remove(corpOverlay); overlayManager.remove(coreOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingOverlay.java index ca85116dce..214a4da19d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingOverlay.java @@ -51,6 +51,7 @@ class FishingOverlay extends Overlay @Inject public FishingOverlay(Client client, FishingPlugin plugin, FishingConfig config, XpTrackerService xpTrackerService) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java index fccbefc749..c7beda5727 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java @@ -46,6 +46,7 @@ import net.runelite.api.InventoryID; import net.runelite.api.Item; import net.runelite.api.ItemContainer; import net.runelite.api.ItemID; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.NPC; import net.runelite.api.Varbits; import net.runelite.api.coords.LocalPoint; @@ -64,6 +65,7 @@ import net.runelite.client.plugins.PluginDependency; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.xptracker.XpTrackerPlugin; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.util.QueryRunner; @PluginDescriptor( @@ -131,6 +133,7 @@ public class FishingPlugin extends Plugin overlayManager.add(overlay); overlayManager.add(spotOverlay); overlayManager.add(fishingSpotMinimapOverlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Fishing overlay"); } @Override @@ -138,6 +141,7 @@ public class FishingPlugin extends Plugin { spotOverlay.setHidden(true); fishingSpotMinimapOverlay.setHidden(true); + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); overlayManager.remove(spotOverlay); overlayManager.remove(fishingSpotMinimapOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerOverlay.java index c024d21c8f..92c9bb0b28 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerOverlay.java @@ -52,8 +52,9 @@ class InventoryViewerOverlay extends Overlay private final PanelComponent panelComponent = new PanelComponent(); @Inject - private InventoryViewerOverlay(Client client, ItemManager itemManager) + private InventoryViewerOverlay(InventoryViewerPlugin plugin, Client client, ItemManager itemManager) { + super(plugin); setPosition(OverlayPosition.BOTTOM_RIGHT); panelComponent.setWrapping(4); panelComponent.setGap(new Point(6, 4)); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerPlugin.java index 92fe518ce0..4370fa56ed 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerPlugin.java @@ -24,10 +24,12 @@ */ package net.runelite.client.plugins.inventoryviewer; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import javax.inject.Inject; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Inventory Viewer", @@ -47,11 +49,13 @@ public class InventoryViewerPlugin extends Plugin public void startUp() { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Inventory viewer overlay"); } @Override public void shutDown() { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); } } \ No newline at end of file diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeOverlay.java index 3fb606aa7f..5adc486288 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeOverlay.java @@ -57,6 +57,7 @@ class MotherlodeOverlay extends Overlay @Inject MotherlodeOverlay(Client client, MotherlodePlugin plugin, MotherlodeConfig config) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodePlugin.java index bc21252535..aede85273e 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodePlugin.java @@ -44,6 +44,7 @@ import net.runelite.api.InventoryID; import net.runelite.api.Item; import net.runelite.api.ItemContainer; import net.runelite.api.ItemID; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import static net.runelite.api.ObjectID.ORE_VEIN_26661; import static net.runelite.api.ObjectID.ORE_VEIN_26662; import static net.runelite.api.ObjectID.ORE_VEIN_26663; @@ -72,6 +73,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.task.Schedule; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Motherlode Mine", @@ -149,6 +151,9 @@ public class MotherlodePlugin extends Plugin overlayManager.add(motherlodeGemOverlay); overlayManager.add(motherlodeSackOverlay); + overlayManager.addMenu(motherlodeGemOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Gem overlay"); + overlayManager.addMenu(motherlodeSackOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Sack overlay"); + session = new MotherlodeSession(); inMlm = checkInMlm(); @@ -161,6 +166,8 @@ public class MotherlodePlugin extends Plugin @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(motherlodeGemOverlay, OPTION_CONFIGURE); + overlayManager.removeMenu(motherlodeSackOverlay, OPTION_CONFIGURE); overlayManager.remove(overlay); overlayManager.remove(rocksOverlay); overlayManager.remove(motherlodeGemOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeSackOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeSackOverlay.java index 628252d5be..88133d1149 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeSackOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/motherlode/MotherlodeSackOverlay.java @@ -52,6 +52,7 @@ class MotherlodeSackOverlay extends Overlay @Inject MotherlodeSackOverlay(Client client, MotherlodeConfig config, MotherlodePlugin plugin) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.config = config; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZoneOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZoneOverlay.java index 937ff59961..53ac55d781 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZoneOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZoneOverlay.java @@ -60,6 +60,7 @@ class NightmareZoneOverlay extends Overlay InfoBoxManager infoBoxManager, ItemManager itemManager) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); setPriority(OverlayPriority.LOW); this.client = client; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZonePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZonePlugin.java index 69fa0b7164..9b0f009811 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZonePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/nightmarezone/NightmareZonePlugin.java @@ -29,6 +29,7 @@ import java.util.Arrays; import javax.inject.Inject; import net.runelite.api.ChatMessageType; import net.runelite.api.Client; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Varbits; import net.runelite.api.events.ChatMessage; import net.runelite.api.events.ConfigChanged; @@ -39,6 +40,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.util.Text; @PluginDescriptor( @@ -73,12 +75,14 @@ public class NightmareZonePlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "NMZ overlay"); overlay.removeAbsorptionCounter(); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); overlay.removeAbsorptionCounter(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoOverlay.java index 6c8cd97b69..d4ca1f3cc9 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoOverlay.java @@ -76,6 +76,7 @@ class OpponentInfoOverlay extends Overlay HiscoreManager hiscoreManager, NPCManager npcManager) { + super(opponentInfoPlugin); this.client = client; this.opponentInfoPlugin = opponentInfoPlugin; this.opponentInfoConfig = opponentInfoConfig; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoPlugin.java index 6e36665a8b..12e823da84 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/OpponentInfoPlugin.java @@ -35,6 +35,7 @@ import lombok.Getter; import net.runelite.api.Actor; import net.runelite.api.Client; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.WorldType; import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameTick; @@ -44,6 +45,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.http.api.hiscore.HiscoreEndpoint; @PluginDescriptor( @@ -89,11 +91,15 @@ public class OpponentInfoPlugin extends Plugin { overlayManager.add(opponentInfoOverlay); overlayManager.add(playerComparisonOverlay); + overlayManager.addMenu(opponentInfoOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Opponent info overlay"); + overlayManager.addMenu(playerComparisonOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Opponent info overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(opponentInfoOverlay, OPTION_CONFIGURE); + overlayManager.removeMenu(playerComparisonOverlay, OPTION_CONFIGURE); lastOpponent = null; lastTime = null; overlayManager.remove(opponentInfoOverlay); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/PlayerComparisonOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/PlayerComparisonOverlay.java index bccdbe4588..055658e8bb 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/PlayerComparisonOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/opponentinfo/PlayerComparisonOverlay.java @@ -83,6 +83,7 @@ class PlayerComparisonOverlay extends Overlay @Inject private PlayerComparisonOverlay(Client client, OpponentInfoPlugin opponentInfoPlugin, OpponentInfoConfig config, HiscoreManager hiscoreManager) { + super(opponentInfoPlugin); this.client = client; this.opponentInfoPlugin = opponentInfoPlugin; this.config = config; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsOverlay.java index 9c8939d424..d00662a0ad 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsOverlay.java @@ -53,6 +53,7 @@ public class RaidsOverlay extends Overlay @Inject private RaidsOverlay(Client client, RaidsPlugin plugin, RaidsConfig config) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); setPriority(OverlayPriority.LOW); this.client = client; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsPlugin.java index f1c9ec5021..c85cbde096 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/raids/RaidsPlugin.java @@ -39,6 +39,7 @@ import net.runelite.api.ChatMessageType; import net.runelite.api.Client; import net.runelite.api.GameState; import net.runelite.api.InstanceTemplates; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.NullObjectID; import static net.runelite.api.Perspective.SCENE_SIZE; import net.runelite.api.Point; @@ -66,6 +67,7 @@ import net.runelite.client.plugins.raids.solver.Layout; import net.runelite.client.plugins.raids.solver.LayoutSolver; import net.runelite.client.plugins.raids.solver.RotationSolver; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.ui.overlay.infobox.InfoBoxManager; import net.runelite.client.util.Text; @@ -153,6 +155,8 @@ public class RaidsPlugin extends Plugin { overlayManager.add(overlay); overlayManager.add(pointsOverlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Raids overlay"); + overlayManager.addMenu(pointsOverlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Raids overlay"); updateLists(); clientThread.invokeLater(() -> checkRaidPresence(true)); } @@ -162,6 +166,8 @@ public class RaidsPlugin extends Plugin { overlayManager.remove(overlay); overlayManager.remove(pointsOverlay); + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); + overlayManager.removeMenu(pointsOverlay, OPTION_CONFIGURE); infoBoxManager.removeInfoBox(timer); inRaidChambers = false; raid = null; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesOverlay.java index a7ef50995f..44fb347be8 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesOverlay.java @@ -46,6 +46,7 @@ public class TeamCapesOverlay extends Overlay @Inject private TeamCapesOverlay(TeamCapesPlugin plugin, TeamCapesConfig config, ItemManager manager) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); setPriority(OverlayPriority.LOW); this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesPlugin.java index 103129d64f..5d9630bdb9 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/teamcapes/TeamCapesPlugin.java @@ -35,12 +35,14 @@ import java.util.stream.Collectors; import javax.inject.Inject; import net.runelite.api.Client; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Player; import net.runelite.client.config.ConfigManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.task.Schedule; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Team Capes", @@ -72,11 +74,13 @@ public class TeamCapesPlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Teamcapes overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); teams.clear(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtOverlay.java index df711c533e..a93ab05738 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtOverlay.java @@ -43,6 +43,7 @@ class WintertodtOverlay extends Overlay @Inject private WintertodtOverlay(WintertodtPlugin plugin) { + super(plugin); this.plugin = plugin; setPosition(OverlayPosition.BOTTOM_LEFT); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtPlugin.java index 6011133f04..719354273e 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/wintertodt/WintertodtPlugin.java @@ -54,6 +54,7 @@ import net.runelite.api.Item; import net.runelite.api.ItemContainer; import static net.runelite.api.ItemID.BRUMA_KINDLING; import static net.runelite.api.ItemID.BRUMA_ROOT; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.MessageNode; import net.runelite.api.Player; import net.runelite.api.events.AnimationChanged; @@ -67,6 +68,7 @@ import net.runelite.client.eventbus.Subscribe; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; import net.runelite.client.util.ColorUtil; @PluginDescriptor( @@ -128,11 +130,13 @@ public class WintertodtPlugin extends Plugin { reset(); overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Wintertodt overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); reset(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingOverlay.java index 39ae45e366..b1d155569b 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingOverlay.java @@ -48,6 +48,7 @@ class WoodcuttingOverlay extends Overlay @Inject private WoodcuttingOverlay(Client client, WoodcuttingPlugin plugin, WoodcuttingConfig config, XpTrackerService xpTrackerService) { + super(plugin); setPosition(OverlayPosition.TOP_LEFT); this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java index bd74d146de..0f0481b112 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java @@ -35,6 +35,7 @@ import net.runelite.api.ChatMessageType; import net.runelite.api.Client; import net.runelite.api.GameObject; import net.runelite.api.GameState; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Player; import net.runelite.api.events.AnimationChanged; import net.runelite.api.events.ChatMessage; @@ -51,6 +52,7 @@ import net.runelite.client.plugins.PluginDependency; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.xptracker.XpTrackerPlugin; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "Woodcutting", @@ -98,11 +100,15 @@ public class WoodcuttingPlugin extends Plugin { overlayManager.add(overlay); overlayManager.add(treesOverlay); + + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Woodcutting overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); + overlayManager.remove(overlay); overlayManager.remove(treesOverlay); treeObjects.clear(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesOverlay.java index e8e2d9f785..58a2faea17 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesOverlay.java @@ -74,6 +74,7 @@ public class XpGlobesOverlay extends Overlay XpTrackerService xpTrackerService, SkillIconManager iconManager) { + super(plugin); this.iconManager = iconManager; this.client = client; this.plugin = plugin; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java index ea2aabc2b5..b0f9fb3fbf 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java @@ -34,6 +34,7 @@ import javax.inject.Inject; import lombok.Getter; import net.runelite.api.Client; import net.runelite.api.Experience; +import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG; import net.runelite.api.Skill; import net.runelite.api.events.ExperienceChanged; import net.runelite.api.events.GameStateChanged; @@ -45,6 +46,7 @@ import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.xptracker.XpTrackerPlugin; import net.runelite.client.task.Schedule; import net.runelite.client.ui.overlay.OverlayManager; +import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE; @PluginDescriptor( name = "XP Globes", @@ -84,11 +86,13 @@ public class XpGlobesPlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(overlay); + overlayManager.addMenu(overlay, RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "XP Globes overlay"); } @Override protected void shutDown() throws Exception { + overlayManager.removeMenu(overlay, OPTION_CONFIGURE); overlayManager.remove(overlay); }