24package com.dreamfirestudios.dreamcore.DreamChat;
26import com.dreamfirestudios.dreamcore.DreamLuckPerms.DreamLuckPerms;
27import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
28import org.bukkit.Bukkit;
29import org.bukkit.entity.Player;
31import java.util.Arrays;
60 for (var splitMessage : SplitMessage(PlainTextComponentSerializer.plainText().serialize(cleanMessage))) {
61 Bukkit.getConsoleSender().sendMessage(splitMessage);
73 for (var splitMessage : SplitMessage(PlainTextComponentSerializer.plainText().serialize(cleanMessage))) {
74 player.sendMessage(splitMessage);
84 for (var player : Bukkit.getOnlinePlayers()) {
100 for (var player : Bukkit.getOnlinePlayers()){
101 var luckPermsUser = DreamLuckPerms.getUser(player);
103 if (DreamLuckPerms.hasPermission(luckPermsUser, permission)) {
104 SendMessageToPlayer(player, PlainTextComponentSerializer.plainText().serialize(cleanMessage), settings);
116 for (var player : Bukkit.getOnlinePlayers()){
118 if (player.getWorld().getName().equalsIgnoreCase(worldName)) {
119 SendMessageToPlayer(player, PlainTextComponentSerializer.plainText().serialize(cleanMessage), settings);
135 for (var player : Bukkit.getOnlinePlayers()){
137 if (player.getWorld().getUID() == worldUUID) {
138 SendMessageToPlayer(player, PlainTextComponentSerializer.plainText().serialize(cleanMessage), settings);
148 private static List<String> SplitMessage(String message){
Convenience helpers for sending formatted messages to console, players, worlds, and permission‑gated ...
static void SendMessageToWorld(String message, UUID worldUUID, DreamMessageSettings settings)
Sends a formatted message to players in a specific world by world UUID.
static void SendMessageToPlayer(Player player, String message, DreamMessageSettings settings)
Formats and sends a message to a specific player.
static< T extends Enum< T > void SendMessageToPerm(String message, T permission, DreamMessageSettings settings)
Sends a formatted message to all online players who have the given enum‑based permission.
static void SendMessageToConsole(String message, DreamMessageSettings settings)
Formats and sends a message to the Minecraft console sender.
static void SendMessageToWorld(String message, String worldName, DreamMessageSettings settings)
Sends a formatted message to players in a specific world by name (case‑insensitive).
static void BroadcastMessage(String message, DreamMessageSettings settings)
Broadcasts a formatted message to all online players.
record DreamMessageSettings(boolean usePlaceholders, boolean allowMiniMessage, boolean allowColors, boolean allowFormatting, boolean allowClickAndHover)
Immutable settings that control how DreamMessageFormatter processes messages.