From 669b0a0ab95a29565fe74715e0809f4fcb0d79af Mon Sep 17 00:00:00 2001 From: Max Weber Date: Tue, 15 May 2018 03:36:16 -0600 Subject: [PATCH] Revert #2530 "Make VarbitChanged only fire once..." This broke the speccounter plugin, and is moderately incorrect because client scripts can update varbits before a tick has happened, and the event should reflect that. --- .../src/main/java/net/runelite/api/Client.java | 2 -- .../java/net/runelite/client/callback/Hooks.java | 7 ------- .../java/net/runelite/mixins/RSClientMixin.java | 16 +++------------- 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Client.java b/runelite-api/src/main/java/net/runelite/api/Client.java index 7bd2742df6..4d94cf0d08 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -192,8 +192,6 @@ public interface Client extends GameEngine @VisibleForDevtools void setVarbitValue(int varbit, int value); - boolean shouldPostVarbitEvent(); - HashTable getWidgetFlags(); HashTable getComponentTable(); diff --git a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java index f2c7602a07..f1f3b1b319 100644 --- a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java +++ b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java @@ -64,7 +64,6 @@ import net.runelite.api.events.MenuOptionClicked; import net.runelite.api.events.PostItemComposition; import net.runelite.api.events.ProjectileMoved; import net.runelite.api.events.SetMessage; -import net.runelite.api.events.VarbitChanged; import net.runelite.api.widgets.Widget; import static net.runelite.api.widgets.WidgetInfo.WORLD_MAP_VIEW; import net.runelite.client.Notifier; @@ -103,7 +102,6 @@ public class Hooks private static final GameTick tick = new GameTick(); private static final DrawManager renderHooks = injector.getInstance(DrawManager.class); private static final Notifier notifier = injector.getInstance(Notifier.class); - private static final VarbitChanged varbitChanged = new VarbitChanged(); private static Dimension lastStretchedDimensions; private static BufferedImage stretchedImage; @@ -118,11 +116,6 @@ public class Hooks { shouldProcessGameTick = false; - if (client.shouldPostVarbitEvent()) - { - eventBus.post(varbitChanged); - } - _deferredEventBus.replay(); eventBus.post(tick); diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java index 9ab7a5ebb4..4ca13aad7f 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -78,6 +78,7 @@ import net.runelite.api.events.PlayerMenuOptionsChanged; import net.runelite.api.events.PlayerSpawned; import net.runelite.api.events.ResizeableChanged; import net.runelite.api.events.UsernameChanged; +import net.runelite.api.events.VarbitChanged; import net.runelite.api.events.WidgetLoaded; import net.runelite.api.mixins.Copy; import net.runelite.api.mixins.FieldHook; @@ -135,9 +136,6 @@ public abstract class RSClientMixin implements RSClient @Inject private static int inventoryDragDelay; - @Inject - private static boolean hasVarbitChanged; - @Inject private static int oldMenuEntryCount; @@ -872,16 +870,8 @@ public abstract class RSClientMixin implements RSClient @Inject public static void settingsChanged(int idx) { - hasVarbitChanged = true; - } - - @Inject - @Override - public boolean shouldPostVarbitEvent() - { - boolean ret = hasVarbitChanged; - hasVarbitChanged = false; - return ret; + VarbitChanged varbitChanged = new VarbitChanged(); + eventBus.post(varbitChanged); } @FieldHook("isResized")