From 2ec0439581efa33ac2da58ea8b804429d025dc0a Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Fri, 19 Feb 2021 17:43:24 -0600 Subject: [PATCH] Fixed issue with experimental VentureChatBungee setting from DiscordSRV. Created helper method for escaping JSON chars. --- src/mineverse/Aust1n46/chat/utilities/Format.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mineverse/Aust1n46/chat/utilities/Format.java b/src/mineverse/Aust1n46/chat/utilities/Format.java index e29eb26..a7d6b4f 100644 --- a/src/mineverse/Aust1n46/chat/utilities/Format.java +++ b/src/mineverse/Aust1n46/chat/utilities/Format.java @@ -53,8 +53,8 @@ public class Format { */ public static String convertToJson(MineverseChatPlayer sender, String format, String chat) { JsonFormat JSONformat = MineverseChat.jfInfo.getJsonFormat(sender.getJsonFormat()); - String f = format.replace("\\", "\\\\").replace("\"", "\\\""); - String c = chat.replace("\\", "\\\\").replace("\"", "\\\""); + String f = escapeJsonChars(format); + String c = escapeJsonChars(chat); String json = "[\"\",{\"text\":\"\",\"extra\":["; String prefix = ""; String suffix = ""; @@ -426,12 +426,17 @@ public class Format { } public static String convertPlainTextToJson(String s, boolean convertURL) { + s = escapeJsonChars(s); if (convertURL) { return "[" + Format.convertLinks(s) + "]"; } else { return "[" + convertToJsonColors(DEFAULT_COLOR_CODE + s) + "]"; } } + + private static String escapeJsonChars(String s) { + return s.replace("\\", "\\\\").replace("\"", "\\\""); + } public static String formatModerationGUI(String json, Player player, String sender, String channelName, int hash) { if (player.hasPermission("venturechat.gui")) {