Fix legacy color codes (§) support in ChatFormatter

- Added conversion for § color codes to MiniMessage format
- Now supports both & and § legacy color codes
This commit is contained in:
loki5512344 2026-01-03 12:42:23 +01:00
parent d00ecc88d5
commit 3aa6291765

View file

@ -61,6 +61,30 @@ public final class ChatFormatter {
matcher2.appendTail(sb2); matcher2.appendTail(sb2);
message = sb2.toString(); message = sb2.toString();
// Конвертируем §[0-9a-fk-or] в соответствующие MiniMessage теги
message = message.replaceAll("§0", "<black>");
message = message.replaceAll("§1", "<dark_blue>");
message = message.replaceAll("§2", "<dark_green>");
message = message.replaceAll("§3", "<dark_aqua>");
message = message.replaceAll("§4", "<dark_red>");
message = message.replaceAll("§5", "<dark_purple>");
message = message.replaceAll("§6", "<gold>");
message = message.replaceAll("§7", "<gray>");
message = message.replaceAll("§8", "<dark_gray>");
message = message.replaceAll("§9", "<blue>");
message = message.replaceAll("§a", "<green>");
message = message.replaceAll("§b", "<aqua>");
message = message.replaceAll("§c", "<red>");
message = message.replaceAll("§d", "<light_purple>");
message = message.replaceAll("§e", "<yellow>");
message = message.replaceAll("§f", "<white>");
message = message.replaceAll("§k", "<obfuscated>");
message = message.replaceAll("§l", "<bold>");
message = message.replaceAll("§m", "<strikethrough>");
message = message.replaceAll("§n", "<underlined>");
message = message.replaceAll("§o", "<italic>");
message = message.replaceAll("§r", "<reset>");
// Конвертируем &[0-9a-fk-or] в соответствующие MiniMessage теги // Конвертируем &[0-9a-fk-or] в соответствующие MiniMessage теги
message = message.replaceAll("&0", "<black>"); message = message.replaceAll("&0", "<black>");
message = message.replaceAll("&1", "<dark_blue>"); message = message.replaceAll("&1", "<dark_blue>");