feat: finally use adventure component serializers for component parsing (ComponentUtilities)

there is an issue with the legacy code parsing where it doesn't reset the styles when there's a color code, but that is since the old parser, it's not that important but just something to note
similar thing goes to discord message deserialization, the style goes first then the color, but for the style to be displayed in minecraft, the color has to go first then the style. an example will be like: `§l§c[§cOP§c] §r§c§r§cchayapak§r: abc`, the `l` and `c` should be swapped
hex colors also didn't get rounded correctly for some reason. my custom chat format is completely white in discord, although minimessage rainbow and gradients works perfectly fine, which is very weird, maybe it thinks my custom chat format looks white
This commit is contained in:
ChomeNS
2025-05-18 19:52:43 +07:00
parent d1d7b9fb29
commit b4f0958202
4 changed files with 248 additions and 476 deletions

View File

@@ -388,7 +388,7 @@ public class ChatPlugin implements Listener {
if (bot.options.useChat) {
if (!targets.equals("@a")) return; // worst fix of all time!1!
final String stringified = ComponentUtilities.stringifySectionSign(component).replace("§", "&");
final String stringified = ComponentUtilities.stringifyLegacy(component).replace("§", "&");
send(stringified);
} else {
bot.core.run("minecraft:tellraw " + targets + " " + SNBTUtilities.fromComponent(bot, component));