diff --git a/api/src/main/java/com/alttd/chat/util/Utility.java b/api/src/main/java/com/alttd/chat/util/Utility.java index ea44001..2f26b0d 100644 --- a/api/src/main/java/com/alttd/chat/util/Utility.java +++ b/api/src/main/java/com/alttd/chat/util/Utility.java @@ -1,22 +1,52 @@ package com.alttd.chat.util; import com.alttd.chat.ChatAPI; -import com.alttd.chat.ChatImplementation; import com.alttd.chat.config.Config; -import com.velocitypowered.api.proxy.Player; -import com.velocitypowered.api.proxy.ProxyServer; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import net.luckperms.api.LuckPerms; import net.luckperms.api.model.group.Group; import net.luckperms.api.model.user.User; -import net.luckperms.api.node.Node; import java.util.Collection; import java.util.Comparator; +import java.util.HashMap; import java.util.UUID; public class Utility { + public static HashMap colors; + static { // this might be in minimessage already? + colors = new HashMap<>(); // todo map all colors to minimessage + colors.put("&0", ""); + colors.put("&d", ""); + colors.put("&e", ""); + colors.put("&f", ""); + colors.put("&g", ""); // is this a thing? + } + + public static String parseColors(String message) { + // split string in sections and check those vs looping hashmap?:/ + // think this is better, but will check numbers on this + for (String key : colors.keySet()) { + if (message.contains(key)) { + message = message.replace(key, colors.get(key)); + } + } + return message; + } + public static String getPrefix(UUID uuid, boolean highest) { StringBuilder prefix = new StringBuilder(); LuckPerms luckPerms = ChatAPI.get().getLuckPerms(); diff --git a/galaxy/src/main/java/com/alttd/chat/handler/ChatHandler.java b/galaxy/src/main/java/com/alttd/chat/handler/ChatHandler.java index b06c72f..231a665 100644 --- a/galaxy/src/main/java/com/alttd/chat/handler/ChatHandler.java +++ b/galaxy/src/main/java/com/alttd/chat/handler/ChatHandler.java @@ -4,6 +4,7 @@ import com.alttd.chat.ChatPlugin; import com.alttd.chat.config.Config; import com.alttd.chat.managers.ChatUserManager; import com.alttd.chat.objects.ChatUser; +import com.alttd.chat.util.Utility; import com.google.common.io.ByteArrayDataOutput; import com.google.common.io.ByteStreams; import net.kyori.adventure.text.Component; @@ -41,6 +42,7 @@ public class ChatHandler { prefix = plugin.getChatAPI().getPrefix(player.getUniqueId()); MiniMessage miniMessage = MiniMessage.get(); + message = Utility.parseColors(message); if(!player.hasPermission("chat.format")) message = miniMessage.stripTokens(message); if(message.contains("[i]"))