package com.alttd.chat.handlers; import com.alttd.chat.VelocityChat; import com.alttd.chat.config.Config; import com.alttd.chat.data.ChatUser; import com.alttd.chat.util.Utility; import com.velocitypowered.api.command.CommandSource; import com.velocitypowered.api.proxy.Player; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.minimessage.MiniMessage; import net.kyori.adventure.text.minimessage.Template; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class ChatHandler { public void globalChat(Player player, String message) { ChatUser user = ChatUserManager.getChatUser(player.getUniqueId()); if(user == null) return; MiniMessage miniMessage = MiniMessage.get(); if(!user.isGcOn()) { player.sendMessage(miniMessage.parse(Config.GCNOTENABLED));// GC IS OFF INFORM THEM ABOUT THIS and cancel return; } message = Utility.parseColors(message); if(!player.hasPermission("chat.format")) // Todo PR fix for '<3' to minimessage message = miniMessage.stripTokens(message); message = RegexManager.replaceText(message); // this filters the message TODO should staff be able to bypass filters? List