From bb1f49b0b46ad3d070d6ccadd1198af6feeb6431 Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 6 May 2022 21:45:40 -0400 Subject: [PATCH] friendnotes: clean up modicons loading This just needs to be run after modicons is initialized, and doesn't need to be checked on gamestate change. --- .../friendnotes/FriendNotesPlugin.java | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/friendnotes/FriendNotesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/friendnotes/FriendNotesPlugin.java index c274b74834..b8032f9e1e 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/friendnotes/FriendNotesPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/friendnotes/FriendNotesPlugin.java @@ -44,7 +44,6 @@ import net.runelite.api.IndexedSprite; import net.runelite.api.MenuAction; import net.runelite.api.Nameable; import net.runelite.api.ScriptID; -import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.MenuEntryAdded; import net.runelite.api.events.NameableNameChanged; import net.runelite.api.events.RemovedFriend; @@ -116,7 +115,15 @@ public class FriendNotesPlugin extends Plugin protected void startUp() throws Exception { overlayManager.add(overlay); - clientThread.invoke(this::loadIcon); + clientThread.invoke(() -> + { + if (client.getModIcons() == null) + { + return false; + } + loadIcon(); + return true; + }); if (client.getGameState() == GameState.LOGGED_IN) { rebuildFriendsList(); @@ -135,15 +142,6 @@ public class FriendNotesPlugin extends Plugin } } - @Subscribe - public void onGameStateChanged(GameStateChanged event) - { - if (event.getGameState() == GameState.LOGGED_IN) - { - loadIcon(); - } - } - @Subscribe public void onConfigChanged(ConfigChanged event) { @@ -380,8 +378,7 @@ public class FriendNotesPlugin extends Plugin private void loadIcon() { - final IndexedSprite[] modIcons = client.getModIcons(); - if (iconIdx != -1 || modIcons == null) + if (iconIdx != -1) { return; } @@ -394,6 +391,8 @@ public class FriendNotesPlugin extends Plugin final BufferedImage resized = ImageUtil.resizeImage(iconImg, ICON_WIDTH, ICON_HEIGHT); + final IndexedSprite[] modIcons = client.getModIcons(); + assert modIcons != null; final IndexedSprite[] newIcons = Arrays.copyOf(modIcons, modIcons.length + 1); newIcons[newIcons.length - 1] = ImageUtil.getImageIndexedSprite(resized, client);