From 02cf62b881dd0f32ee79eebbbdf23a884653654b Mon Sep 17 00:00:00 2001 From: Owain van Brakel Date: Sun, 11 Aug 2019 19:40:16 +0200 Subject: [PATCH] client/api: fix runscript --- .../src/main/java/net/runelite/api/ScriptID.java | 12 +++--------- .../main/java/net/runelite/mixins/ScriptVMMixin.java | 6 ++---- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/ScriptID.java b/runelite-api/src/main/java/net/runelite/api/ScriptID.java index dd3acab212..6c804866ab 100644 --- a/runelite-api/src/main/java/net/runelite/api/ScriptID.java +++ b/runelite-api/src/main/java/net/runelite/api/ScriptID.java @@ -147,15 +147,6 @@ public final class ScriptID @ScriptArguments(integer = 2) public static final int DIARY_QUEST_UPDATE_LINECOUNT = 2523; - /** - * Initializes the chatbox input to use RuneLite callbacks - * - */ - public static final int RUNELITE_CHATBOX_INPUT_INIT = 10001; - /** * Handles zoom input * @@ -197,15 +188,18 @@ public final class ScriptID /** * Join a clan, duh */ + @ScriptArguments(string = 1) public static final int CUSTOM_JOIN_CLAN = 10690; /** * Send a public message */ + @ScriptArguments(string = 1) public static final int PUBLICMSG = 13337; /** * Clicking bank pin buttons runs this */ + @ScriptArguments(integer = 20) public static final int BANK_PIN_OP = 685; } diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java index 3e05f66c34..e71992c810 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java @@ -146,11 +146,9 @@ public abstract class ScriptVMMixin implements RSClient { assert isClientThread(); assert currentScript == null; - Object[] cargs = new Object[args.length]; - assert cargs[0] instanceof Integer || cargs[0] instanceof JavaScriptCallback : "The first argument should always be a ScriptID!"; - System.arraycopy(args, 0, cargs, 1, args.length); + assert args[0] instanceof Integer || args[0] instanceof JavaScriptCallback : "The first argument should always be a ScriptID!"; RSScriptEvent se = createScriptEvent(); - se.setArguments(cargs); + se.setArguments(args); runScript(se, 5000000); } }