From 015facf0cc3dc100a0b11ddeda561ee0adbf5dca Mon Sep 17 00:00:00 2001 From: Ganom <8338284+Ganom@users.noreply.github.com> Date: Sun, 24 Apr 2022 09:02:35 -0400 Subject: [PATCH] script-vm: add default handler for mes callbacks. (#3170) Co-authored-by: Ganom --- .../main/java/net/runelite/mixins/ScriptVMMixin.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) 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 b9b0b1ac6f..b67a0dbfbf 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java @@ -27,6 +27,7 @@ package net.runelite.mixins; import java.util.regex.Matcher; import java.util.regex.Pattern; +import net.runelite.api.ChatMessageType; import net.runelite.api.events.ScriptCallbackEvent; import net.runelite.api.events.ScriptPostFired; import net.runelite.api.events.ScriptPreFired; @@ -123,7 +124,16 @@ public abstract class ScriptVMMixin implements RSClient client.setIntStackSize(intStackSize); return true; } - + else if ("mes".equals(stringOp)) + { + int intStackSize = client.getIntStackSize(); + int messageType = client.getIntStack()[--intStackSize]; + String message = client.getStringStack()[--stringStackSize]; + client.setStringStackSize(stringStackSize); + client.setIntStackSize(intStackSize); + client.addChatMessage(ChatMessageType.of(messageType), "", message, null, true); + return true; + } ScriptCallbackEvent event = new ScriptCallbackEvent(); event.setScript(currentScript); event.setEventName(stringOp);