From abb1996c4e211f2463695e764f03bd7daaad0ff2 Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 21 Mar 2018 17:29:28 -0500 Subject: [PATCH 1/5] refactor: rename widgetSettings to clientVarps --- runelite-api/src/main/java/net/runelite/api/Client.java | 2 +- .../net/runelite/client/plugins/devtools/SettingsTracker.java | 4 ++-- .../src/main/java/net/runelite/mixins/RSClientMixin.java | 4 ++-- .../src/main/java/net/runelite/mixins/VarbitMixin.java | 4 ++-- runescape-api/src/main/java/net/runelite/rs/api/RSClient.java | 4 ++-- 5 files changed, 9 insertions(+), 9 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 a7ba3ab1b4..325ab44c09 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -154,7 +154,7 @@ public interface Client extends GameEngine int[] getSettings(); - int[] getWidgetSettings(); + int[] getVarps(); int getSetting(Setting setting); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java index 5ef459e6ca..c27cb5cc82 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java @@ -47,14 +47,14 @@ public class SettingsTracker if (clientSettings == null || widgetSettings == null) { clientSettings = copy(client.getSettings()); - widgetSettings = copy(client.getWidgetSettings()); + widgetSettings = copy(client.getVarps()); log.info("Snapshotted client and widget settings"); return; } int[] newClientSettings = client.getSettings(); - int[] newWidgetSettings = client.getWidgetSettings(); + int[] newWidgetSettings = client.getVarps(); for (int i = 0; i < Math.min(clientSettings.length, newClientSettings.length); ++i) { 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 a792fce35a..8969c900b8 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -233,8 +233,8 @@ public abstract class RSClientMixin implements RSClient @Override public int getSetting(Setting setting) { - int[] settings = getSettings(); - return settings[setting.getId()]; + int[] varps = getVarps(); + return varps[setting.getId()]; } @Inject diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/VarbitMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/VarbitMixin.java index c0f8812606..95eddf75a2 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/VarbitMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/VarbitMixin.java @@ -64,8 +64,8 @@ public abstract class VarbitMixin implements RSClient varbitCache.put(varbitId, v); } - int[] settings = getSettings(); - int value = settings[v.getIndex()]; + int[] varps = getVarps(); + int value = varps[v.getIndex()]; int lsb = v.getLeastSignificantBit(); int msb = v.getMostSignificantBit(); int mask = (1 << ((msb - lsb) + 1)) - 1; diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index 95dc51eaea..4298504df4 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -81,9 +81,9 @@ public interface RSClient extends RSGameEngine, Client @Override int[] getSettings(); - @Import("widgetSettings") + @Import("clientVarps") @Override - int[] getWidgetSettings(); + int[] getVarps(); @Import("energy") @Override From 8c7beffb463c5633aa0a5aab32d43b2a77862d48 Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 21 Mar 2018 17:32:20 -0500 Subject: [PATCH 2/5] refactor: rename settings to serverVarps --- runescape-api/src/main/java/net/runelite/rs/api/RSClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index 4298504df4..7c9a43b6bd 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -77,7 +77,7 @@ public interface RSClient extends RSGameEngine, Client @Override byte[][][] getTileSettings(); - @Import("settings") + @Import("serverVarps") @Override int[] getSettings(); From 8ee3de283c9a11f1abf427fd527f5a869a34ebf4 Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 21 Mar 2018 17:36:31 -0500 Subject: [PATCH 3/5] refactor: remove unnecessary Client#getSettings(), use Client#getVarps() These two methods would return the same values for a majority (if not all) of the time. The backing arrays for both of these are synchronized when the server sends the packet to set a varp value. --- .../main/java/net/runelite/api/Client.java | 2 -- .../plugins/devtools/SettingsTracker.java | 22 ++----------------- .../java/net/runelite/rs/api/RSClient.java | 4 ---- 3 files changed, 2 insertions(+), 26 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 325ab44c09..674108949f 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -152,8 +152,6 @@ public interface Client extends GameEngine int[][] getXteaKeys(); - int[] getSettings(); - int[] getVarps(); int getSetting(Setting setting); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java index c27cb5cc82..14b00db629 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/SettingsTracker.java @@ -34,7 +34,6 @@ public class SettingsTracker { private final Client client; - private int[] clientSettings; private int[] widgetSettings; public SettingsTracker(Client client) @@ -44,32 +43,16 @@ public class SettingsTracker public void snapshot(ActionEvent e) { - if (clientSettings == null || widgetSettings == null) + if (widgetSettings == null) { - clientSettings = copy(client.getSettings()); widgetSettings = copy(client.getVarps()); log.info("Snapshotted client and widget settings"); return; } - int[] newClientSettings = client.getSettings(); int[] newWidgetSettings = client.getVarps(); - for (int i = 0; i < Math.min(clientSettings.length, newClientSettings.length); ++i) - { - int before = clientSettings[i]; - int after = newClientSettings[i]; - - if (before == after) - { - continue; - } - - log.info("Client setting index {} has changed from {} to {}: {} -> {}", - i, before, after, prettyPrintInt(before), prettyPrintInt(after)); - } - for (int i = 0; i < Math.min(widgetSettings.length, newWidgetSettings.length); ++i) { int before = widgetSettings[i]; @@ -84,13 +67,12 @@ public class SettingsTracker i, before, after, prettyPrintInt(before), prettyPrintInt(after)); } - clientSettings = copy(newClientSettings); widgetSettings = copy(newWidgetSettings); } public void clear(ActionEvent e) { - clientSettings = widgetSettings = null; + widgetSettings = null; } private static int[] copy(int[] array) diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index 7c9a43b6bd..bcebd5fa7a 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -77,10 +77,6 @@ public interface RSClient extends RSGameEngine, Client @Override byte[][][] getTileSettings(); - @Import("serverVarps") - @Override - int[] getSettings(); - @Import("clientVarps") @Override int[] getVarps(); From 70ddd2d4a3a2ff50cb493a60f1c329670734b9d8 Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 21 Mar 2018 17:39:37 -0500 Subject: [PATCH 4/5] fix: hook clientVarps instead of settings --- .../src/main/java/net/runelite/mixins/RSClientMixin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 8969c900b8..5fedaebdec 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -634,7 +634,7 @@ public abstract class RSClientMixin implements RSClient eventBus.post(offerChangedEvent); } - @FieldHook("settings") + @FieldHook("clientVarps") @Inject public static void settingsChanged(int idx) { From aaed0c98ad7fa1f9210d8c6dc5d0beb0a58c9585 Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 21 Mar 2018 17:55:20 -0500 Subject: [PATCH 5/5] refactor: rename get/set settings to get/set varp --- .../src/main/java/net/runelite/cache/script/Instructions.java | 4 ++-- cache/src/main/java/net/runelite/cache/script/Opcodes.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cache/src/main/java/net/runelite/cache/script/Instructions.java b/cache/src/main/java/net/runelite/cache/script/Instructions.java index 709d3bf939..8cd59ace92 100644 --- a/cache/src/main/java/net/runelite/cache/script/Instructions.java +++ b/cache/src/main/java/net/runelite/cache/script/Instructions.java @@ -36,8 +36,8 @@ public class Instructions public void init() { add(LOAD_INT, "load_int", 0, 1); - add(GET_SETTINGS, "get_settings", 0, 1); - add(PUT_SETTINGS, "put_settings", 0, 1); + add(GET_VARP, "get_varp", 0, 1); + add(PUT_VARP, "put_varp", 0, 1); add(LOAD_STRING, "load_string", 0, 0, 0, 1); add(JUMP, "jump", 0, 0); add(IF_ICMPNE, "if_icmpne", 2, 0); diff --git a/cache/src/main/java/net/runelite/cache/script/Opcodes.java b/cache/src/main/java/net/runelite/cache/script/Opcodes.java index d6f67a4128..b6c7a237f8 100644 --- a/cache/src/main/java/net/runelite/cache/script/Opcodes.java +++ b/cache/src/main/java/net/runelite/cache/script/Opcodes.java @@ -27,8 +27,8 @@ package net.runelite.cache.script; public class Opcodes { public static final int LOAD_INT = 0; - public static final int GET_SETTINGS = 1; - public static final int PUT_SETTINGS = 2; + public static final int GET_VARP = 1; + public static final int PUT_VARP = 2; public static final int LOAD_STRING = 3; public static final int JUMP = 6; public static final int IF_ICMPNE = 7;