package com.lifeknight.relaymcbungeemain.commands.staff; import com.lifeknight.relaymcbungeemain.commands.CommandUtilities; import com.lifeknight.relaymcbungeemain.player.SmartPlayer; import com.lifeknight.relaymcbungeemain.utilities.Server; import com.lifeknight.relayutils.basic.Miscellaneous; import com.lifeknight.relayutils.game.MainGame; import com.lifeknight.relayutils.utilities.ComponentBuilder; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.plugin.Command; public class ServersCommand extends Command { public ServersCommand() { super("servers"); } @Override public void execute(CommandSender commandSender, String[] arguments) { if (!CommandUtilities.isStaff(commandSender)) { CommandUtilities.sendInsufficientPermissionsMessage(commandSender); return; } ComponentBuilder componentBuilder = new ComponentBuilder(); componentBuilder.color(ComponentBuilder.GREEN).line().newLine(); componentBuilder.color(ComponentBuilder.YELLOW).append("Hubs:"); commandSender.sendMessage(componentBuilder.getResult()); for (MainGame mainGame : Miscellaneous.with(Miscellaneous.getList(MainGame.values()), (MainGame) null)) { componentBuilder = new ComponentBuilder(); componentBuilder.color(ComponentBuilder.AQUA).append(" - %s:", mainGame == null ? "Main" : mainGame.getName()); commandSender.sendMessage(componentBuilder.getResult()); for (Server server : Server.getServersOfType(mainGame, false)) { componentBuilder = new ComponentBuilder(); componentBuilder.appendComponent(server.getComponent()); commandSender.sendMessage(componentBuilder.getResult()); } } componentBuilder.newLine().color(ComponentBuilder.YELLOW).append("Limbos:"); commandSender.sendMessage(componentBuilder.getResult()); for (Server server : Server.getLimboServers()) { componentBuilder = new ComponentBuilder(); componentBuilder.appendComponent(server.getComponent()); commandSender.sendMessage(componentBuilder.getResult()); } componentBuilder.color(ComponentBuilder.YELLOW).append("Servers:").newLine(); for (MainGame value : MainGame.values()) { componentBuilder = new ComponentBuilder(); componentBuilder.color(ComponentBuilder.AQUA).append(" - %s:", value.getName()); commandSender.sendMessage(componentBuilder.getResult()); for (Server server : Server.getServersOfType(value, true)) { componentBuilder = new ComponentBuilder(); componentBuilder.appendComponent(server.getComponent()); commandSender.sendMessage(componentBuilder.getResult()); } } componentBuilder = new ComponentBuilder(); componentBuilder.newLine().color(ComponentBuilder.RED_ORANGE).append("Total Online Players: ").color(ComponentBuilder.YELLOW).append(SmartPlayer.getOnlineSmartPlayers().size()).newLine(); componentBuilder.color(ComponentBuilder.GREEN).line(); commandSender.sendMessage(componentBuilder.getResult()); } }