diff --git a/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java b/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java index 7688a64a9c..69a3c0beae 100644 --- a/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java +++ b/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java @@ -46,6 +46,7 @@ import net.runelite.api.MessageNode; import net.runelite.api.Varbits; import net.runelite.api.events.ConfigChanged; import net.runelite.api.events.ResizeableChanged; +import net.runelite.api.events.ScriptCallbackEvent; import net.runelite.api.events.SetMessage; import net.runelite.api.events.VarbitChanged; import net.runelite.client.config.ChatColorConfig; @@ -164,6 +165,37 @@ public class ChatMessageManager } } + @Subscribe + public void onScriptCallbackEvent(ScriptCallbackEvent scriptCallbackEvent) + { + final String eventName = scriptCallbackEvent.getEventName(); + + switch (eventName) + { + case "privateChatFrom": + case "privateChatTo": + case "privateChatSplitFrom": + case "privateChatSplitTo": + break; + default: + return; + } + + boolean isChatboxTransparent = client.isResized() && client.getVar(Varbits.TRANSPARENT_CHATBOX) == 1; + Color usernameColor = isChatboxTransparent ? chatColorConfig.transparentPrivateUsernames() : chatColorConfig.opaquePrivateUsernames(); + if (usernameColor == null) + { + return; + } + + final String[] stringStack = client.getStringStack(); + final int stringStackSize = client.getStringStackSize(); + + // Stack is: To/From playername : + String toFrom = stringStack[stringStackSize - 3]; + stringStack[stringStackSize - 3] = ColorUtil.prependColorTag(toFrom, usernameColor); + } + private static Color getDefaultColor(ChatMessageType type, boolean transparent) { if (!transparent) diff --git a/runelite-client/src/main/scripts/ChatBuilder.hash b/runelite-client/src/main/scripts/ChatBuilder.hash new file mode 100644 index 0000000000..c0d38c0cc0 --- /dev/null +++ b/runelite-client/src/main/scripts/ChatBuilder.hash @@ -0,0 +1 @@ +E9076990244AE02E1CEB3E8F966C86975CDC654F11655B7B211812FBB5AC23AA \ No newline at end of file diff --git a/runelite-client/src/main/scripts/ChatBuilder.rs2asm b/runelite-client/src/main/scripts/ChatBuilder.rs2asm new file mode 100644 index 0000000000..0a0b39e5f0 --- /dev/null +++ b/runelite-client/src/main/scripts/ChatBuilder.rs2asm @@ -0,0 +1,902 @@ +.id 84 +.int_stack_count 1 +.string_stack_count 0 +.int_var_count 15 +.string_var_count 13 + load_int 10616890 + widget_get_width_widget + istore 1 + get_localplayer_name + string_remove_html + sstore 0 + load_int 0 + istore 2 + get_varc 41 + load_int 3 + if_icmpeq LABEL12 + jump LABEL14 +LABEL12: + load_int 1 + istore 2 +LABEL14: + load_int 0 + istore 3 + load_int 0 + istore 4 + load_string "" + sstore 1 + load_string "" + sstore 2 + load_string "" + sstore 3 + load_string "" + sstore 4 + load_string "" + sstore 5 + load_string "" + sstore 6 + load_string "" + sstore 7 + load_string "" + sstore 8 + invoke 921 + load_int 1 + if_icmpeq LABEL38 + jump LABEL58 +LABEL38: + load_int 16777215 + load_int 1 + istore 4 + istore 3 + load_string "" + load_string "" + load_string "" + load_string "" + sstore 4 + sstore 3 + sstore 2 + sstore 1 + load_string "" + load_string "" + load_string "" + load_string "" + sstore 8 + sstore 7 + sstore 6 + sstore 5 +LABEL58: + load_int 0 + istore 5 + load_int 0 + istore 6 + load_int 0 + istore 7 + load_int 105 + load_int 73 + load_int 579 + iload 7 + get_enum_value + istore 8 + get_varc 41 + load_int 0 + if_icmpeq LABEL77 + get_varc 41 + load_int 2 + if_icmpeq LABEL77 + jump LABEL133 +LABEL77: + 5022 + string_length + load_int 0 + if_icmpgt LABEL82 + jump LABEL133 +LABEL82: + sload 1 + load_string "Public chat filtering:" + load_string "" + load_string " " + load_string "" + 5022 + appendtags + tolowercase + load_string "" + string_append 7 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 + iload 8 + widget_put_actions_null_widget + load_int -1 + load_string "" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget + iload 5 + iload 6 + isub + istore 5 + iload 7 + load_int 1 + iadd + istore 7 + load_int 105 + load_int 73 + load_int 579 + iload 7 + get_enum_value + istore 8 +LABEL133: + iload 0 + istore 9 + load_int 0 + istore 10 + load_int -1 + istore 11 + load_string "" + sstore 9 + load_string "" + sstore 10 + load_string "" + sstore 11 + load_string "" + sstore 12 + load_int 0 + istore 12 +LABEL149: + iload 9 + load_int -1 + if_icmpne LABEL153 + jump LABEL645 +LABEL153: + iload 8 + load_int -1 + if_icmpne LABEL157 + jump LABEL645 +LABEL157: + iload 9 + get_chat_message + istore 12 + sstore 11 + sstore 10 + sstore 9 + istore 11 + istore 10 + iload 10 + sload 9 + iload 12 + invoke 193 + load_int 1 + if_icmpeq LABEL172 + jump LABEL641 +LABEL172: + iload 10 + sload 9 + sload 11 + iload 11 + iload 2 + sload 0 + iload 12 + invoke 90 + load_int 1 + if_icmpeq LABEL183 + jump LABEL641 +LABEL183: + iload 10 + switch + 1: LABEL186 + 2: LABEL186 + 3: LABEL228 + 101: LABEL250 + 5: LABEL268 + 6: LABEL301 + 7: LABEL228 + 103: LABEL323 + 104: LABEL323 + 9: LABEL341 + 107: LABEL390 + 14: LABEL367 + 90: LABEL207 + 91: LABEL207 + jump LABEL426 +LABEL186: + sload 9 + load_string ":" + string_append 2 + sload 1 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL207: + sload 9 + load_string ":" + string_append 2 + sload 3 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL228: + load_string "From " + sload 9 + load_string ":" + load_string "privateChatFrom" + runelite_callback + string_append 3 + sload 2 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL250: + sload 7 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 + jump LABEL440 +LABEL268: + sload 2 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 + get_varbit 1627 + load_int 0 + if_icmpeq LABEL289 + jump LABEL300 +LABEL289: + iload 11 + load_int 500 + iadd + load_int 1 + iadd + put_varc 65 + load_int 664 + load_int 0 + load_string "1" + load_int 10616832 + widget_put_render_listener_widget +LABEL300: + jump LABEL440 +LABEL301: + load_string "To " + sload 9 + load_string ":" + load_string "privateChatTo" + runelite_callback + string_append 3 + sload 2 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL323: + sload 8 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 + jump LABEL440 +LABEL341: + load_string "[" + sload 5 + sload 10 + load_string "" + load_string "] " + sload 9 + load_string ":" + string_append 7 + sload 6 + sload 11 + load_string "" + string_append 3 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL367: + sload 11 + invoke 2066 + sstore 12 + sstore 11 + sload 4 + load_string "Broadcast:" + load_string "" + string_append 3 + sload 11 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 203 + istore 6 + jump LABEL440 +LABEL390: + get_gamecycle + iload 11 + isub + load_int 500 + if_icmpgt LABEL396 + jump LABEL411 +LABEL396: + load_string "jk :P" + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 + jump LABEL425 +LABEL411: + sload 11 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 +LABEL425: + jump LABEL440 +LABEL426: + sload 11 + iload 7 + iload 8 + load_int 10616890 + iload 1 + load_int 3 + load_int 14 + iload 5 + load_int 0 + load_int 103 + iload 3 + iload 4 + invoke 199 + istore 6 +LABEL440: + iload 8 + widget_put_actions_null_widget + iload 10 + switch + 1: LABEL445 + 2: LABEL445 + 3: LABEL445 + 101: LABEL510 + 6: LABEL445 + 7: LABEL445 + 103: LABEL535 + 104: LABEL535 + 9: LABEL445 + 106: LABEL445 + 14: LABEL560 + 90: LABEL445 + 91: LABEL445 + jump LABEL615 +LABEL445: + load_string "" + sload 9 + load_string "" + string_append 3 + iload 8 + widget_put_name_widget + load_int 86 + load_int -2147483644 + load_string "event_opbase" + load_string "is" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget + sload 0 + sload 9 + string_remove_html + string_compare + load_int 0 + if_icmpne LABEL472 + jump LABEL509 +LABEL472: + iload 12 + load_int 1 + if_icmpeq LABEL476 + jump LABEL481 +LABEL476: + load_int 6 + load_string "Message" + iload 8 + widget_put_action_widget + jump LABEL489 +LABEL481: + load_int 6 + load_string "Add friend" + iload 8 + widget_put_action_widget + load_int 7 + load_string "Add ignore" + iload 8 + widget_put_action_widget +LABEL489: + load_int 8 + load_string "Report" + iload 8 + widget_put_action_widget + iload 10 + load_int 9 + if_icmpeq LABEL497 + jump LABEL509 +LABEL497: + get_clanchatcount + load_int 0 + if_icmpgt LABEL501 + jump LABEL509 +LABEL501: + get_clanchat_rank + clanchat_kick_rank + if_icmpge LABEL505 + jump LABEL509 +LABEL505: + load_int 9 + load_string "Kick" + iload 8 + widget_put_action_widget +LABEL509: + jump LABEL627 +LABEL510: + load_string "" + sload 9 + load_string "" + string_append 3 + iload 8 + widget_put_name_widget + load_int 86 + load_int -2147483644 + load_string "event_opbase" + load_string "is" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget + load_int 1 + load_string "Accept trade" + iload 8 + widget_put_action_widget + jump LABEL627 +LABEL535: + load_string "" + sload 9 + load_string "" + string_append 3 + iload 8 + widget_put_name_widget + load_int 86 + load_int -2147483644 + load_string "event_opbase" + load_string "is" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget + load_int 2 + load_string "Accept challenge" + iload 8 + widget_put_action_widget + jump LABEL627 +LABEL560: + sload 12 + string_length + load_int 0 + if_icmpgt LABEL565 + jump LABEL590 +LABEL565: + load_int 6 + load_string "Open" + iload 8 + widget_put_action_widget + load_int 7 + load_string "Check" + iload 8 + widget_put_action_widget + load_int 2065 + iload 8 + widget_get_parentid_widget + iload 7 + load_int 3158271 + load_string "Iii" + iload 8 + widget_put_mouse_hover_listener_widget + load_int 2065 + iload 8 + widget_get_parentid_widget + iload 7 + iload 3 + load_string "Iii" + iload 8 + widget_put_mouse_exit_listener_widget + jump LABEL598 +LABEL590: + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget +LABEL598: + load_int 9 + load_string "Clear history" + iload 8 + widget_put_action_widget + load_string "" + load_string "Notification" + load_string "" + string_append 3 + iload 8 + widget_put_name_widget + load_int 2064 + load_int -2147483644 + sload 12 + load_string "is" + iload 8 + widget_put_option_click_listener_widget + jump LABEL627 +LABEL615: + load_int -1 + load_string "" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget +LABEL627: + iload 5 + iload 6 + isub + istore 5 + iload 7 + load_int 1 + iadd + istore 7 + load_int 105 + load_int 73 + load_int 579 + iload 7 + get_enum_value + istore 8 +LABEL641: + iload 9 + get_messagenode_next_id + istore 9 + jump LABEL149 +LABEL645: + iload 7 + istore 13 +LABEL647: + iload 8 + load_int -1 + if_icmpne LABEL651 + jump LABEL708 +LABEL651: + iload 8 + widget_put_actions_null_widget + load_int -1 + load_string "" + iload 8 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 8 + widget_put_mouse_exit_listener_widget + load_int 0 + load_int 0 + load_int 0 + load_int 0 + iload 8 + widget_put_size_widget + load_int 10616890 + iload 7 + load_int 2 + imul + widget_load_child + load_int 1 + if_icmpeq LABEL679 + jump LABEL683 +LABEL679: + load_string "" + widget_put_text + load_int 1 + widget_put_hidden +LABEL683: + load_int 10616890 + iload 7 + load_int 2 + imul + load_int 1 + iadd + widget_load_child + load_int 1 + if_icmpeq LABEL693 + jump LABEL697 +LABEL693: + load_string "" + widget_put_text + load_int 1 + widget_put_hidden +LABEL697: + iload 7 + load_int 1 + iadd + istore 7 + load_int 105 + load_int 73 + load_int 579 + iload 7 + get_enum_value + istore 8 + jump LABEL647 +LABEL708: + iload 5 + load_int 2 + isub + istore 5 + load_int 0 + iload 5 + isub + istore 5 + load_int 10616890 + widget_get_height_widget + istore 14 + iload 5 + iload 14 + if_icmpgt LABEL723 + jump LABEL725 +LABEL723: + iload 5 + istore 14 +LABEL725: + iload 13 + istore 7 +LABEL727: + iload 7 + load_int 0 + if_icmpgt LABEL731 + jump LABEL784 +LABEL731: + iload 7 + load_int 1 + isub + istore 7 + load_int 105 + load_int 73 + load_int 579 + iload 7 + get_enum_value + istore 8 + iload 8 + widget_get_relativey_widget + iload 14 + iadd + load_int 2 + isub + istore 5 + iload 8 + widget_get_relativex_widget + iload 5 + load_int 0 + load_int 0 + iload 8 + widget_put_position_widget + load_int 10616890 + iload 7 + load_int 2 + imul + widget_load_child + load_int 1 + if_icmpeq LABEL763 + jump LABEL768 +LABEL763: + widget_get_relativex + iload 5 + load_int 0 + load_int 0 + widget_put_position +LABEL768: + load_int 10616890 + iload 7 + load_int 2 + imul + load_int 1 + iadd + widget_load_child + load_int 1 + if_icmpeq LABEL778 + jump LABEL783 +LABEL778: + widget_get_relativex + iload 5 + load_int 0 + load_int 0 + widget_put_position +LABEL783: + jump LABEL727 +LABEL784: + load_int 0 + iload 14 + load_int 10616890 + widget_put_scrollwidthheight_widget + load_int 10617391 + load_int 10616890 + get_varc 7 + iload 14 + get_varc 8 + isub + iadd + invoke 72 + load_int 10616890 + widget_get_scrolly_widget + iload 14 + put_varc 8 + put_varc 7 + return diff --git a/runelite-client/src/main/scripts/ChatSplitBuilder.hash b/runelite-client/src/main/scripts/ChatSplitBuilder.hash new file mode 100644 index 0000000000..e71389fb55 --- /dev/null +++ b/runelite-client/src/main/scripts/ChatSplitBuilder.hash @@ -0,0 +1 @@ +008FA4B7983DF14899909AF361AD2DE955DE552E78FAF8C6604E848D1776B4F0 \ No newline at end of file diff --git a/runelite-client/src/main/scripts/ChatSplitBuilder.rs2asm b/runelite-client/src/main/scripts/ChatSplitBuilder.rs2asm new file mode 100644 index 0000000000..39fa1e7b3c --- /dev/null +++ b/runelite-client/src/main/scripts/ChatSplitBuilder.rs2asm @@ -0,0 +1,599 @@ +.id 89 +.int_stack_count 1 +.string_stack_count 0 +.int_var_count 16 +.string_var_count 4 + load_int 0 + istore 1 + load_int 2 + istore 2 + load_int 103 + istore 3 + load_int 4 + istore 4 + load_int 23 + istore 5 + invoke 900 + istore 6 + load_int 103 + load_int 105 + load_int 1136 + iload 6 + get_enum_value + load_int 0 + if_icmpgt LABEL20 + jump LABEL58 +LABEL20: + iload 6 + load_int 1745 + if_icmpeq LABEL24 + jump LABEL36 +LABEL24: + load_int 0 + load_int 102 + load_int 103 + load_int 105 + load_int 1960 + iload 6 + get_enum_value + load_int 30 + istore 5 + istore 1 + istore 3 + istore 2 +LABEL36: + get_varc 41 + load_int -1 + if_icmpeq LABEL40 + jump LABEL49 +LABEL40: + invoke 922 + load_int 1 + if_icmpeq LABEL44 + jump LABEL49 +LABEL44: + iload 4 + iload 5 + iadd + istore 4 + jump LABEL58 +LABEL49: + iload 4 + load_int 73 + load_int 73 + iload 6 + load_int 10551325 + get_enum_value + widget_get_height_widget + iadd + istore 4 +LABEL58: + iload 4 + istore 7 + load_int 10682368 + widget_get_width_widget + istore 8 + load_int 0 + istore 9 + load_int 105 + load_int 73 + load_int 580 + iload 9 + get_enum_value + istore 10 + load_int 0 + istore 11 + load_string "" + sstore 0 + get_system_update_timer + load_int 0 + if_icmpgt LABEL79 + jump LABEL156 +LABEL79: + get_system_update_timer + load_int 50 + idiv + load_int 60 + modulo + istore 11 + iload 11 + load_int 10 + if_icmplt LABEL89 + jump LABEL100 +LABEL89: + load_string "System update in: " + get_system_update_timer + load_int 3000 + idiv + int_to_string + load_string ":0" + iload 11 + int_to_string + string_append 4 + sstore 0 + jump LABEL110 +LABEL100: + load_string "System update in: " + get_system_update_timer + load_int 3000 + idiv + int_to_string + load_string ":" + iload 11 + int_to_string + string_append 4 + sstore 0 +LABEL110: + iload 7 + sload 0 + iload 9 + iload 10 + load_int 10682368 + iload 8 + iload 1 + load_int 13 + iload 7 + iload 2 + iload 3 + load_int 16776960 + load_int 1 + invoke 199 + iadd + istore 7 + iload 10 + widget_put_actions_null_widget + load_int -1 + load_string "" + iload 10 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_exit_listener_widget + load_int 0 + load_int 0 + load_int 0 + load_int 0 + iload 10 + widget_put_size_widget + iload 9 + load_int 1 + iadd + istore 9 + load_int 105 + load_int 73 + load_int 580 + iload 9 + get_enum_value + istore 10 +LABEL156: + load_int -1 + istore 12 + load_int -1 + istore 13 + load_string "" + sstore 1 + load_int 0 + istore 14 + load_string "" + sstore 2 + load_string "" + sstore 3 + get_varc 55 + get_varc 202 + if_icmpge LABEL172 + jump LABEL282 +LABEL172: + get_varc 55 + get_gamecycle + load_int 3000 + isub + if_icmpgt LABEL178 + jump LABEL282 +LABEL178: + load_int 14 + get_chatlinebuffer_length + load_int 0 + if_icmpgt LABEL183 + jump LABEL282 +LABEL183: + load_int 14 + load_int 0 + get_chat_message_type + istore 14 + sstore 0 + sstore 2 + sstore 1 + istore 13 + istore 12 + iload 12 + load_int -1 + if_icmpne LABEL196 + jump LABEL282 +LABEL196: + sload 0 + invoke 2066 + sstore 3 + sstore 0 + iload 7 + sload 0 + iload 9 + iload 10 + load_int 10682368 + iload 8 + iload 1 + load_int 13 + iload 7 + iload 2 + iload 3 + load_int 16776960 + load_int 1 + invoke 199 + iadd + istore 7 + iload 10 + widget_put_actions_null_widget + sload 3 + string_length + load_int 0 + if_icmpgt LABEL223 + jump LABEL248 +LABEL223: + load_int 6 + load_string "Open" + iload 10 + widget_put_action_widget + load_int 7 + load_string "Check" + iload 10 + widget_put_action_widget + load_int 2065 + iload 10 + widget_get_parentid_widget + iload 9 + load_int 16777215 + load_string "Iii" + iload 10 + widget_put_mouse_hover_listener_widget + load_int 2065 + iload 10 + widget_get_parentid_widget + iload 9 + load_int 16776960 + load_string "Iii" + iload 10 + widget_put_mouse_exit_listener_widget + jump LABEL256 +LABEL248: + load_int -1 + load_string "" + iload 10 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_exit_listener_widget +LABEL256: + load_int 9 + load_string "Clear history" + iload 10 + widget_put_action_widget + load_string "" + load_string "Notification" + load_string "" + string_append 3 + iload 10 + widget_put_name_widget + load_int 2064 + load_int -2147483644 + sload 3 + load_string "is" + iload 10 + widget_put_option_click_listener_widget + iload 9 + load_int 1 + iadd + istore 9 + load_int 105 + load_int 73 + load_int 580 + iload 9 + get_enum_value + istore 10 +LABEL282: + iload 0 + istore 12 + load_int 0 + istore 15 + get_varp 287 + load_int 1 + if_icmpeq LABEL290 + jump LABEL479 +LABEL290: + get_varc 41 + load_int -1 + if_icmpne LABEL297 + get_varbit 4089 + load_int 0 + if_icmpeq LABEL297 + jump LABEL479 +LABEL297: + iload 12 + load_int -1 + if_icmpne LABEL301 + jump LABEL479 +LABEL301: + iload 10 + load_int -1 + if_icmpne LABEL305 + jump LABEL479 +LABEL305: + iload 7 + iload 4 + isub + load_int 57 + if_icmplt LABEL311 + jump LABEL479 +LABEL311: + iload 12 + get_chat_message + istore 14 + sstore 0 + sstore 2 + sstore 1 + istore 13 + istore 15 + iload 15 + sload 1 + iload 13 + iload 14 + invoke 91 + load_int 1 + if_icmpeq LABEL327 + jump LABEL475 +LABEL327: + iload 15 + switch + 3: LABEL330 + 6: LABEL351 + 7: LABEL330 + jump LABEL372 +LABEL330: + iload 7 + load_string "From " + sload 1 + load_string ":" + load_string "privateChatSplitFrom" + runelite_callback + string_append 3 + sload 0 + iload 9 + iload 10 + load_int 10682368 + iload 8 + iload 1 + load_int 13 + iload 7 + iload 2 + iload 3 + load_int 65535 + load_int 1 + invoke 203 + iadd + istore 7 + jump LABEL407 +LABEL351: + iload 7 + load_string "To " + sload 1 + load_string ":" + load_string "privateChatSplitTo" + runelite_callback + string_append 3 + sload 0 + iload 9 + iload 10 + load_int 10682368 + iload 8 + iload 1 + load_int 13 + iload 7 + iload 2 + iload 3 + load_int 65535 + load_int 1 + invoke 203 + iadd + istore 7 + jump LABEL407 +LABEL372: + iload 7 + sload 0 + iload 9 + iload 10 + load_int 10682368 + iload 8 + iload 1 + load_int 13 + iload 7 + iload 2 + iload 3 + load_int 65535 + load_int 1 + invoke 199 + iadd + istore 7 + iload 15 + load_int 5 + if_icmpeq LABEL392 + jump LABEL407 +LABEL392: + get_varbit 1627 + load_int 0 + if_icmpeq LABEL396 + jump LABEL407 +LABEL396: + iload 13 + load_int 500 + iadd + load_int 1 + iadd + put_varc 65 + load_int 664 + load_int 0 + load_string "1" + load_int 10616832 + widget_put_render_listener_widget +LABEL407: + iload 10 + widget_put_actions_null_widget + iload 15 + load_int 3 + if_icmpeq LABEL419 + iload 15 + load_int 6 + if_icmpeq LABEL419 + iload 15 + load_int 7 + if_icmpeq LABEL419 + jump LABEL453 +LABEL419: + iload 14 + load_int 1 + if_icmpeq LABEL423 + jump LABEL428 +LABEL423: + load_int 8 + load_string "Message" + iload 10 + widget_put_action_widget + jump LABEL436 +LABEL428: + load_int 8 + load_string "Add friend" + iload 10 + widget_put_action_widget + load_int 9 + load_string "Add ignore" + iload 10 + widget_put_action_widget +LABEL436: + load_int 10 + load_string "Report" + iload 10 + widget_put_action_widget + load_string "" + sload 1 + load_string "" + string_append 3 + iload 10 + widget_put_name_widget + load_int 88 + load_int -2147483644 + load_string "event_opbase" + load_string "is" + iload 10 + widget_put_option_click_listener_widget + jump LABEL457 +LABEL453: + load_int -1 + load_string "" + iload 10 + widget_put_option_click_listener_widget +LABEL457: + load_int -1 + load_string "" + iload 10 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_exit_listener_widget + iload 9 + load_int 1 + iadd + istore 9 + load_int 105 + load_int 73 + load_int 580 + iload 9 + get_enum_value + istore 10 +LABEL475: + iload 12 + get_messagenode_next_id + istore 12 + jump LABEL297 +LABEL479: + iload 10 + load_int -1 + if_icmpne LABEL483 + jump LABEL540 +LABEL483: + iload 10 + widget_put_actions_null_widget + load_int -1 + load_string "" + iload 10 + widget_put_option_click_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_hover_listener_widget + load_int -1 + load_string "" + iload 10 + widget_put_mouse_exit_listener_widget + load_int 0 + load_int 0 + load_int 0 + load_int 0 + iload 10 + widget_put_size_widget + load_int 10682368 + iload 9 + load_int 2 + imul + widget_load_child + load_int 1 + if_icmpeq LABEL511 + jump LABEL515 +LABEL511: + load_string "" + widget_put_text + load_int 1 + widget_put_hidden +LABEL515: + load_int 10682368 + iload 9 + load_int 2 + imul + load_int 1 + iadd + widget_load_child + load_int 1 + if_icmpeq LABEL525 + jump LABEL529 +LABEL525: + load_string "" + widget_put_text + load_int 1 + widget_put_hidden +LABEL529: + iload 9 + load_int 1 + iadd + istore 9 + load_int 105 + load_int 73 + load_int 580 + iload 9 + get_enum_value + istore 10 + jump LABEL479 +LABEL540: + return