From 7eeb484c648c95f84505b039fd33ad18bf9c55d6 Mon Sep 17 00:00:00 2001 From: Adam Date: Sun, 3 Feb 2019 20:31:32 -0500 Subject: [PATCH] Clear stored npcs in fishing/pc/rc plugins Fixes #5970 --- .../client/plugins/fishing/FishingPlugin.java | 11 +++++++++++ .../plugins/pestcontrol/PestControlPlugin.java | 13 ++++++++++++- .../client/plugins/runecraft/RunecraftPlugin.java | 1 + 3 files changed, 24 insertions(+), 1 deletion(-) 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 592f706455..07977334e4 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 @@ -50,6 +50,7 @@ import net.runelite.api.NPC; import net.runelite.api.Varbits; import net.runelite.api.coords.LocalPoint; import net.runelite.api.events.ChatMessage; +import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameTick; import net.runelite.api.events.InteractingChanged; import net.runelite.api.events.ItemContainerChanged; @@ -143,6 +144,16 @@ public class FishingPlugin extends Plugin currentSpot = null; } + @Subscribe + public void onGameStateChanged(GameStateChanged gameStateChanged) + { + if (gameStateChanged.getGameState() == GameState.LOADING) + { + fishingSpots.clear(); + minnowSpots.clear(); + } + } + @Subscribe public void onItemContainerChanged(ItemContainerChanged event) { diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/pestcontrol/PestControlPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/pestcontrol/PestControlPlugin.java index 7407c5f301..360e56f40d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/pestcontrol/PestControlPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/pestcontrol/PestControlPlugin.java @@ -35,12 +35,14 @@ import lombok.AccessLevel; import lombok.Getter; import net.runelite.api.ChatMessageType; import net.runelite.api.Client; +import net.runelite.api.GameState; import net.runelite.api.NPC; import net.runelite.api.NpcID; import net.runelite.api.events.ChatMessage; -import net.runelite.client.eventbus.Subscribe; +import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.NpcDespawned; import net.runelite.api.events.NpcSpawned; +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; @@ -87,6 +89,15 @@ public class PestControlPlugin extends Plugin spinners.clear(); } + @Subscribe + public void onGameStateChanged(GameStateChanged event) + { + if (event.getGameState() == GameState.LOADING) + { + spinners.clear(); + } + } + @Subscribe public void onChatMessage(ChatMessage chatMessage) { diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java index 7f0cef2d94..14b53f9995 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java @@ -232,6 +232,7 @@ public class RunecraftPlugin extends Plugin if (event.getGameState() == GameState.LOADING) { abyssObjects.clear(); + darkMage = null; } }