package PyMc; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import org.bukkit.plugin.java.JavaPlugin; import java.io.IOException; import java.io.PrintWriter; import java.net.Socket; import java.util.ArrayList; import java.util.List; public class Utils implements Listener { private static final List clientSockets = new ArrayList<>(); private static String latestChatMessage = ""; public static void addClient(Socket socket) { clientSockets.add(socket); } public static void removeClient(Socket socket) { clientSockets.remove(socket); } public static void sendToClients(String message) { for (Socket clientSocket : clientSockets) { try { PrintWriter writer = new PrintWriter(clientSocket.getOutputStream(), true); writer.println(message); } catch (IOException e) { e.printStackTrace(); } } } public static String getLatestChatMessage() { return latestChatMessage; } public static void send(CommandSender sender, String message) { if (sender instanceof Player) { sender.sendMessage(ChatColor.translateAlternateColorCodes('&', message)); } else { Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', message)); } } public static void executeAsPlayer(Player player, String command) { player.performCommand(command); } public static void executeAsConsole(String command) { Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), command); } @EventHandler public void onPlayerChat(AsyncPlayerChatEvent event) { latestChatMessage = event.getMessage(); } }