- Баллы
- 66
- Имя в Minecraft
- Migel077
Всем привет, я только недавно начал работать с
net.kyori.adventure.text.TextComponent и у меня возник вопрос.
Раньше я использовал этот метод, чтобы получать из HEX цветов, цвета формата §x§r§r§g§g§b§b
Но теперь я встретился с трудностью. При использовании TextComponent никак не работает этот метод.
Мне нужно чтобы из строки
все цвета сохранялись, причём {message} это отдельный TextComonent, который в свою очередь состоит ещё из нескольких Component
net.kyori.adventure.text.TextComponent и у меня возник вопрос.
Раньше я использовал этот метод, чтобы получать из HEX цветов, цвета формата §x§r§r§g§g§b§b
Код:
private static final Pattern HEX_PATTERN = Pattern.compile("&#([A-Fa-f0-9]{6})");
public static String translateHexColorCodes(String message) {
char COLOR_CHAR = ChatColor.COLOR_CHAR;
Matcher matcher = HEX_PATTERN.matcher(message);
StringBuilder buffer = new StringBuilder(message.length() + 4 * 8);
while (matcher.find()) {
String group = matcher.group(1);
matcher.appendReplacement(buffer, COLOR_CHAR + "x"
+ COLOR_CHAR + group.charAt(0) + COLOR_CHAR + group.charAt(1)
+ COLOR_CHAR + group.charAt(2) + COLOR_CHAR + group.charAt(3)
+ COLOR_CHAR + group.charAt(4) + COLOR_CHAR + group.charAt(5)
);
}
return ChatColor.translateAlternateColorCodes('&', matcher.appendTail(buffer).toString());
}
Мне нужно чтобы из строки
Код:
text = "[G] Migel077 > εDE2{message}"