diff --git a/build.gradle.kts b/build.gradle.kts index 66490e8..127fc0d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -67,6 +67,11 @@ webhook { » Removed 1.8.8-1.18.2 support, It will be moved into another github branch. » Expect that the branch likely won't be maintained after a period of time. » Likely will only be supporting https://papermc.io from this point on. + + API: + » All methods handling data in the features has been moved to **com.ryderbelserion.chatmanager.api** + » It can be accessed via our static instance of the plugin i.e ChatManager.getPlugin().api().whateveryouwanttouse + » Warning: It likely will change in the future so don't get to comfy with it. """.trimIndent()) } } diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/Methods.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/Methods.java index 142fd8c..236bf17 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/Methods.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/Methods.java @@ -1,13 +1,12 @@ package me.h1dd3nxn1nja.chatmanager; +import java.util.UUID; import java.util.regex.Matcher; import java.util.regex.Pattern; import me.h1dd3nxn1nja.chatmanager.support.PluginSupport; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import me.clip.placeholderapi.PlaceholderAPI; -import me.h1dd3nxn1nja.chatmanager.commands.CommandMuteChat; -import me.h1dd3nxn1nja.chatmanager.listeners.ListenerCaps; import net.md_5.bungee.api.ChatColor; public class Methods { @@ -30,7 +29,7 @@ public static String color(String message) { return ChatColor.translateAlternateColorCodes('&', matcher.appendTail(buffer).toString()); } - public static String color(Player player, String message) { + public static String color(UUID uuid, String message) { Matcher matcher = HEX_PATTERN.matcher(message); StringBuilder buffer = new StringBuilder(); @@ -38,6 +37,8 @@ public static String color(Player player, String message) { matcher.appendReplacement(buffer, net.md_5.bungee.api.ChatColor.of(matcher.group()).toString()); } + Player player = plugin.getServer().getPlayer(uuid); + return PluginSupport.PLACEHOLDERAPI.isPluginEnabled() ? ChatColor.translateAlternateColorCodes('&', PlaceholderAPI.setPlaceholders(player, matcher.appendTail(buffer).toString())) : ChatColor.translateAlternateColorCodes('&', matcher.appendTail(buffer).toString()); } @@ -68,16 +69,22 @@ public static void tellConsole(String message, boolean prefix) { sendMessage(plugin.getServer().getConsoleSender(), message, false); } - public static boolean inRange(Player player, Player receiver, int radius) { - if (receiver.getLocation().getWorld().equals(player.getLocation().getWorld())) { - return receiver.getLocation().distanceSquared(player.getLocation()) <= radius * radius; + public static boolean inRange(UUID uuid, UUID receiver, int radius) { + Player player = plugin.getServer().getPlayer(uuid); + Player other = plugin.getServer().getPlayer(receiver); + + if (other.getLocation().getWorld().equals(player.getLocation().getWorld())) { + return other.getLocation().distanceSquared(player.getLocation()) <= radius * radius; } return false; } - public static boolean inWorld(Player player, Player receiver) { - return receiver.getLocation().getWorld().equals(player.getLocation().getWorld()); + public static boolean inWorld(UUID uuid, UUID receiver) { + Player player = plugin.getServer().getPlayer(uuid); + Player other = plugin.getServer().getPlayer(receiver); + + return other.getLocation().getWorld().equals(player.getLocation().getWorld()); } public static void sendMessage(CommandSender commandSender, String message, boolean prefixToggle) { @@ -86,7 +93,6 @@ public static void sendMessage(CommandSender commandSender, String message, bool String prefix = getPrefix(); if (commandSender instanceof Player player) { - if (!prefix.isEmpty() && prefixToggle) player.sendMessage(color(message.replace("{Prefix}", prefix))); else player.sendMessage(color(message)); return; diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAntiSwear.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAntiSwear.java index f379247..3c75168 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAntiSwear.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAntiSwear.java @@ -10,6 +10,7 @@ import org.bukkit.entity.Player; import org.jetbrains.annotations.NotNull; import java.util.List; +import java.util.UUID; public class CommandAntiSwear implements CommandExecutor { @@ -21,12 +22,12 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N FileConfiguration bannedWords = settingsManager.getBannedWords(); FileConfiguration messages = settingsManager.getMessages(); - if (!(sender instanceof Player)) { + if (!(sender instanceof Player player)) { Methods.sendMessage(sender, "&cError: You can only use that command in-game", true); return true; } - - Player player = (Player) sender; + + UUID uuid = player.getUniqueId(); if (cmd.getName().equalsIgnoreCase("AntiSwear")) { if (player.hasPermission("chatmanager.antiswear")) { @@ -87,9 +88,9 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N bannedWords.set("Banned-Words", swearWords); settingsManager.saveBannedWords(); settingsManager.reloadBannedWords(); - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Blacklisted_Word.Added").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Blacklisted_Word.Added").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } else { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Blacklisted_Word.Exists").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Blacklisted_Word.Exists").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } } else { player.sendMessage(Methods.color("&cCommand Usage: &7/Antiswear add blacklist ")); @@ -108,9 +109,9 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N bannedWords.set("Whitelisted_Words", swearWords); settingsManager.saveBannedWords(); settingsManager.reloadBannedWords(); - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Whitelisted_Word.Added").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Whitelisted_Word.Added").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } else { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Whitelisted_Word.Exists").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Whitelisted_Word.Exists").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } } else { player.sendMessage(Methods.color("&cCommand Usage: &7/Antiswear add whitelist ")); @@ -141,9 +142,9 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N bannedWords.set("Banned-Words", list); settingsManager.saveBannedWords(); settingsManager.reloadBannedWords(); - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Blacklisted_Word.Removed").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Blacklisted_Word.Removed").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } else { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Blacklisted_Word.Not_Found").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Blacklisted_Word.Not_Found").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } } else { player.sendMessage(Methods.color("&cCommand Usage: &7/Antiswear remove blacklist ")); @@ -162,9 +163,9 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N bannedWords.set("Whitelisted_Words", list); settingsManager.saveBannedWords(); settingsManager.reloadBannedWords(); - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Whitelisted_Word.Removed").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Whitelisted_Word.Removed").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } else { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Whitelisted_Word.Not_Found").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Whitelisted_Word.Not_Found").replace("{word}", args[2]).replace("{Prefix}", messages.getString("Message.Prefix")))); } } else { player.sendMessage(Methods.color("&cCommand Usage: &7/Antiswear remove whitelist ")); diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAutoBroadcast.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAutoBroadcast.java index d7460da..4ba4e0d 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAutoBroadcast.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/commands/CommandAutoBroadcast.java @@ -160,7 +160,7 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command cmd, @N Methods.sendMessage(player, messages.getString("Auto_Broadcast.List").replace("{section}", key), true); for (String bcmsg : autobroadcast.getStringList("Auto_Broadcast.Per_World_Messages.Messages." + key)) { - if (broadcast != null) player.sendMessage(Methods.color(player, "&7 - " + bcmsg.replace("{Prefix}", broadcast))); + if (broadcast != null) player.sendMessage(Methods.color(player.getUniqueId(), "&7 - " + bcmsg.replace("{Prefix}", broadcast))); } Methods.sendMessage(player, "", true); diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiSpam.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiSpam.java index fd8a622..febd79d 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiSpam.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiSpam.java @@ -42,7 +42,7 @@ public void antiSpamChat(AsyncPlayerChatEvent event) { String msg = plugin.api().getPreviousMsgData().getMessage(player.getUniqueId()); if (message.equalsIgnoreCase(msg)) { - player.sendMessage(Methods.color(player, messages.getString("Anti_Spam.Chat.Repetitive_Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(player.getUniqueId(), messages.getString("Anti_Spam.Chat.Repetitive_Message").replace("{Prefix}", messages.getString("Message.Prefix")))); event.setCancelled(true); } } diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiUnicode.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiUnicode.java index 103183e..6d9e853 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiUnicode.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerAntiUnicode.java @@ -44,7 +44,7 @@ public void onChat(AsyncPlayerChatEvent event) { if (matcher.find()) return; event.setCancelled(true); - player.sendMessage(Methods.color(player, messages.getString("Anti_Unicode.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(player.getUniqueId(), messages.getString("Anti_Unicode.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Unicode.Notify_Staff")) { for (Player staff : plugin.getServer().getOnlinePlayers()) { diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerMentions.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerMentions.java index eef71a9..052865d 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerMentions.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerMentions.java @@ -54,7 +54,7 @@ public void onChat(AsyncPlayerChatEvent event) { if (plugin.api().getToggleChatData().containsUser(target.getUniqueId())) return; if (config.getBoolean("Chat_Radius.Enable")) { - if ((!Methods.inRange(target, player, config.getInt("Chat_Radius.Block_Distance"))) || (!Methods.inWorld(target, player))) return; + if ((!Methods.inRange(target.getUniqueId(), player.getUniqueId(), config.getInt("Chat_Radius.Block_Distance"))) || (!Methods.inWorld(target.getUniqueId(), player.getUniqueId()))) return; } if (plugin.api().getToggleMentionsData().containsUser(target.getUniqueId())) { diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerRadius.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerRadius.java index c4f8a47..7fe8b41 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerRadius.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerRadius.java @@ -1,6 +1,8 @@ package me.h1dd3nxn1nja.chatmanager.listeners; import java.util.Set; +import java.util.UUID; + import me.h1dd3nxn1nja.chatmanager.SettingsManager; import org.bukkit.ChatColor; import org.bukkit.configuration.file.FileConfiguration; @@ -25,21 +27,23 @@ public void onPlayerChat(AsyncPlayerChatEvent event) { String message = event.getMessage(); Set recipients = event.getRecipients(); + UUID uuid = player.getUniqueId(); + String localOverrideChar = config.getString("Chat_Radius.Local_Chat.Override_Symbol"); String globalOverrideChar = config.getString("Chat_Radius.Global_Chat.Override_Symbol"); String worldOverrideChar = config.getString("Chat_Radius.World_Chat.Override_Symbol"); int radius = settingsManager.getConfig().getInt("Chat_Radius.Block_Distance"); - if (!config.getBoolean("Chat_Radius.Enable") || plugin.api().getStaffChatData().containsUser(player.getUniqueId())) return; + if (!config.getBoolean("Chat_Radius.Enable") || plugin.api().getStaffChatData().containsUser(uuid)) return; if (player.hasPermission("chatmanager.chatradius.global.override")) { assert globalOverrideChar != null; if (!globalOverrideChar.equals("")) { if (ChatColor.stripColor(message).charAt(0) == globalOverrideChar.charAt(0)) { - plugin.api().getWorldChatData().removeUser(player.getUniqueId()); - plugin.api().getLocalChatData().removeUser(player.getUniqueId()); - plugin.api().getGlobalChatData().addUser(player.getUniqueId()); + plugin.api().getWorldChatData().removeUser(uuid); + plugin.api().getLocalChatData().removeUser(uuid); + plugin.api().getGlobalChatData().addUser(uuid); return; } } @@ -50,9 +54,9 @@ public void onPlayerChat(AsyncPlayerChatEvent event) { if (!localOverrideChar.equals("")) { if (ChatColor.stripColor(message).charAt(0) == localOverrideChar.charAt(0)) { - plugin.api().getWorldChatData().removeUser(player.getUniqueId()); - plugin.api().getGlobalChatData().removeUser(player.getUniqueId()); - plugin.api().getLocalChatData().addUser(player.getUniqueId()); + plugin.api().getWorldChatData().removeUser(uuid); + plugin.api().getGlobalChatData().removeUser(uuid); + plugin.api().getLocalChatData().addUser(uuid); event.setMessage(message); return; } @@ -63,20 +67,20 @@ public void onPlayerChat(AsyncPlayerChatEvent event) { assert worldOverrideChar != null; if (!worldOverrideChar.equals("")) { if (ChatColor.stripColor(message).charAt(0) == worldOverrideChar.charAt(0)) { - plugin.api().getGlobalChatData().removeUser(player.getUniqueId()); - plugin.api().getLocalChatData().removeUser(player.getUniqueId()); - plugin.api().getWorldChatData().addUser(player.getUniqueId()); + plugin.api().getGlobalChatData().removeUser(uuid); + plugin.api().getLocalChatData().removeUser(uuid); + plugin.api().getWorldChatData().addUser(uuid); event.setMessage(message); return; } } } - if (plugin.api().getLocalChatData().containsUser(player.getUniqueId())) { + if (plugin.api().getLocalChatData().containsUser(uuid)) { for (Player receiver : plugin.getServer().getOnlinePlayers()) { recipients.remove(receiver); - if (Methods.inRange(player, receiver, radius)) { + if (Methods.inRange(uuid, receiver.getUniqueId(), radius)) { recipients.add(player); recipients.add(receiver); } @@ -85,11 +89,11 @@ public void onPlayerChat(AsyncPlayerChatEvent event) { } } - if (plugin.api().getWorldChatData().containsUser(player.getUniqueId())) { + if (plugin.api().getWorldChatData().containsUser(uuid)) { for (Player receiver : plugin.getServer().getOnlinePlayers()) { recipients.remove(receiver); - if (Methods.inWorld(player, receiver)) { + if (Methods.inWorld(uuid, receiver.getUniqueId())) { recipients.add(player); recipients.add(receiver); } diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerSwear.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerSwear.java index b7fa7c4..586f4de 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerSwear.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/listeners/ListenerSwear.java @@ -16,6 +16,7 @@ import java.util.Calendar; import java.util.Date; import java.util.List; +import java.util.UUID; public class ListenerSwear implements Listener { @@ -66,7 +67,7 @@ public void onSwear(AsyncPlayerChatEvent event) { private boolean curseMessageContains(AsyncPlayerChatEvent event, FileConfiguration config, FileConfiguration messages, Player player, String message, Date time, String curseMessage, String blockedWords) { if (!curseMessage.contains(blockedWords)) return false; - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Chat.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(player.getUniqueId(), messages.getString("Anti_Swear.Chat.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Swear.Chat.Block_Message")) event.setCancelled(true); @@ -117,6 +118,8 @@ public void onSwearCommand(PlayerCommandPreprocessEvent event) { String message = event.getMessage(); Date time = Calendar.getInstance().getTime(); + UUID uuid = player.getUniqueId(); + List whitelisted = bannedWords.getStringList("Whitelisted_Words"); List whitelistedCommands = config.getStringList("Anti_Swear.Commands.Whitelisted_Commands"); List blockedWordsList = bannedWords.getStringList("Banned-Words"); @@ -132,7 +135,7 @@ public void onSwearCommand(PlayerCommandPreprocessEvent event) { } if (sensitiveMessage.contains(blockedWords)) { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Commands.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Commands.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Swear.Commands.Block_Command")) event.setCancelled(true); if (config.getBoolean("Anti_Swear.Commands.Notify_Staff")) { @@ -156,7 +159,7 @@ public void onSwearCommand(PlayerCommandPreprocessEvent event) { if (!config.getBoolean("Anti_Swear.Commands.Increase_Sensitivity")) { for (String blockedWords : blockedWordsList) { if (curseMessage.contains(blockedWords)) { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Commands.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(player.getUniqueId(), messages.getString("Anti_Swear.Commands.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Swear.Commands.Block_Command")) event.setCancelled(true); @@ -220,6 +223,8 @@ public void onSwearSign(SignChangeEvent event) { Player player = event.getPlayer(); Date time = Calendar.getInstance().getTime(); + UUID uuid = player.getUniqueId(); + List whitelisted = bannedWords.getStringList("Whitelisted_Words"); List blockedWordsList = bannedWords.getStringList("Banned-Words"); @@ -237,7 +242,7 @@ public void onSwearSign(SignChangeEvent event) { } if (curseMessage.contains(blockedWords)) { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Signs.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Signs.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Swear.Signs.Block_Sign")) event.setCancelled(true); if (config.getBoolean("Anti_Swear.Signs.Notify_Staff")) { @@ -264,7 +269,7 @@ public void onSwearSign(SignChangeEvent event) { for (String curseMessages : message.toLowerCase().split(" ")) { if (!player.hasPermission("chatmanager.bypass.antiswear")) { if (bannedWords.getStringList("Banned-Words").contains(curseMessages)) { - player.sendMessage(Methods.color(player, messages.getString("Anti_Swear.Signs.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); + player.sendMessage(Methods.color(uuid, messages.getString("Anti_Swear.Signs.Message").replace("{Prefix}", messages.getString("Message.Prefix")))); if (config.getBoolean("Anti_Swear.Signs.Block_Sign")) event.setCancelled(true); diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/AutoBroadcastManager.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/AutoBroadcastManager.java index 1a16211..1bff79e 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/AutoBroadcastManager.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/AutoBroadcastManager.java @@ -38,9 +38,9 @@ public void run() { if (autobroadcast.getBoolean("Auto_Broadcast.Global_Messages.Enable")) { for (Player player : plugin.getServer().getOnlinePlayers()) { if (autobroadcast.getBoolean("Auto_Broadcast.Global_Messages.Header_And_Footer")) { - player.sendMessage(Methods.color(player, autobroadcast.getString("Auto_Broadcast.Global_Messages.Header"))); + player.sendMessage(Methods.color(player.getUniqueId(), autobroadcast.getString("Auto_Broadcast.Global_Messages.Header"))); player.sendMessage(crazyManager.getPlaceholderManager().setPlaceholders(player, messages.get(line).replace("{Prefix}", prefix).replace("\\n", "\n"))); - player.sendMessage(Methods.color(player, autobroadcast.getString("Auto_Broadcast.Global_Messages.Footer"))); + player.sendMessage(Methods.color(player.getUniqueId(), autobroadcast.getString("Auto_Broadcast.Global_Messages.Footer"))); } else { player.sendMessage(crazyManager.getPlaceholderManager().setPlaceholders(player, messages.get(line).replace("{Prefix}", prefix).replace("\\n", "\n"))); } @@ -77,9 +77,9 @@ public void run() { for (Player player : plugin.getServer().getOnlinePlayers()) { if (player.getWorld().getName().equals(world.getName())) { if (autobroadcast.getBoolean("Auto_Broadcast.Per_World_Messages.Header_And_Footer")) { - player.sendMessage(Methods.color(player, autobroadcast.getString("Auto_Broadcast.Per_World_Messages.Header"))); + player.sendMessage(Methods.color(player.getUniqueId(), autobroadcast.getString("Auto_Broadcast.Per_World_Messages.Header"))); player.sendMessage(crazyManager.getPlaceholderManager().setPlaceholders(player, world.getMessages().get(world.getIndex()).replace("{Prefix}", prefix).replace("\\n", "\n"))); - player.sendMessage(Methods.color(player, autobroadcast.getString("Auto_Broadcast.Per_World_Messages.Footer"))); + player.sendMessage(Methods.color(player.getUniqueId(), autobroadcast.getString("Auto_Broadcast.Per_World_Messages.Footer"))); } else { player.sendMessage(crazyManager.getPlaceholderManager().setPlaceholders(player, world.getMessages().get(world.getIndex()).replace("{Prefix}", prefix).replace("\\n", "\n"))); } diff --git a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/PlaceholderManager.java b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/PlaceholderManager.java index a3c8a96..6b54f27 100644 --- a/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/PlaceholderManager.java +++ b/paper/src/main/java/me/h1dd3nxn1nja/chatmanager/managers/PlaceholderManager.java @@ -8,8 +8,8 @@ import me.h1dd3nxn1nja.chatmanager.support.PluginSupport; import me.h1dd3nxn1nja.chatmanager.support.misc.VaultSupport; import org.bukkit.entity.Player; - import java.text.DecimalFormat; +import java.util.UUID; public class PlaceholderManager { @@ -23,31 +23,31 @@ public class PlaceholderManager { public String setPlaceholders(Player player, String placeholders) { DecimalFormat df = new DecimalFormat("#,###"); - - placeholders = Methods.color(player, placeholders.replace("{player}", player.getName())); - placeholders = Methods.color(player, placeholders.replace("{Prefix}", settingsManager.getMessages().getString("Message.Prefix"))); - placeholders = Methods.color(player, placeholders.replace("{prefix}", settingsManager.getMessages().getString("Message.Prefix"))); - placeholders = Methods.color(player, placeholders.replace("{display_name}", player.getDisplayName())); - placeholders = Methods.color(player, placeholders.replace("{displayname}", player.getDisplayName())); - placeholders = Methods.color(player, placeholders.replace("{world}", player.getLocation().getWorld().getName())); - placeholders = Methods.color(player, placeholders.replace("{online}", df.format(plugin.getServer().getOnlinePlayers().size()))); - placeholders = Methods.color(player, placeholders.replace("{server_online}", df.format(plugin.getServer().getOnlinePlayers().size()))); - placeholders = Methods.color(player, placeholders.replace("{server_max_players}", df.format(plugin.getServer().getMaxPlayers()))); - placeholders = Methods.color(player, placeholders.replace("{server_name}", settingsManager.getConfig().getString("Server_Name"))); + + UUID uuid = player.getUniqueId(); + + placeholders = Methods.color(uuid, placeholders.replace("{player}", player.getName())); + placeholders = Methods.color(uuid, placeholders.replace("{Prefix}", settingsManager.getMessages().getString("Message.Prefix"))); + placeholders = Methods.color(uuid, placeholders.replace("{prefix}", settingsManager.getMessages().getString("Message.Prefix"))); + placeholders = Methods.color(uuid, placeholders.replace("{display_name}", player.getDisplayName())); + placeholders = Methods.color(uuid, placeholders.replace("{displayname}", player.getDisplayName())); + placeholders = Methods.color(uuid, placeholders.replace("{world}", player.getLocation().getWorld().getName())); + placeholders = Methods.color(uuid, placeholders.replace("{online}", df.format(plugin.getServer().getOnlinePlayers().size()))); + placeholders = Methods.color(uuid, placeholders.replace("{server_online}", df.format(plugin.getServer().getOnlinePlayers().size()))); + placeholders = Methods.color(uuid, placeholders.replace("{server_max_players}", df.format(plugin.getServer().getMaxPlayers()))); + placeholders = Methods.color(uuid, placeholders.replace("{server_name}", settingsManager.getConfig().getString("Server_Name"))); if (PluginSupport.VAULT.isPluginEnabled()) { - placeholders = Methods.color(player, placeholders.replace("{vault_prefix}", vaultSupport.getPlayerPrefix(player))); - placeholders = Methods.color(player, placeholders.replace("{vault_suffix}", vaultSupport.getPlayerSuffix(player))); + placeholders = Methods.color(uuid, placeholders.replace("{vault_prefix}", vaultSupport.getPlayerPrefix(player))); + placeholders = Methods.color(uuid, placeholders.replace("{vault_suffix}", vaultSupport.getPlayerSuffix(player))); } if (PluginSupport.ESSENTIALS.isPluginEnabled()) { - placeholders = Methods.color(player, placeholders.replace("{ess_player_balance}", essentialsSupport.getPlayerBalance(player))); - placeholders = Methods.color(player, placeholders.replace("{ess_player_nickname}", essentialsSupport.getPlayerNickname(player))); + placeholders = Methods.color(uuid, placeholders.replace("{ess_player_balance}", essentialsSupport.getPlayerBalance(player))); + placeholders = Methods.color(uuid, placeholders.replace("{ess_player_nickname}", essentialsSupport.getPlayerNickname(player))); } - if (PluginSupport.PLACEHOLDERAPI.isPluginEnabled()) { - placeholders = PlaceholderAPI.setPlaceholders(player, placeholders); - } + if (PluginSupport.PLACEHOLDERAPI.isPluginEnabled()) placeholders = PlaceholderAPI.setPlaceholders(player, placeholders); return placeholders; }