package com.lifeknight.relaymcbungeemain.commands.amenities; import com.lifeknight.relaymcbungeemain.player.SmartPlayer; import com.lifeknight.relayutils.basic.Text; import com.lifeknight.relayutils.utilities.ComponentBuilder; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.connection.ProxiedPlayer; import net.md_5.bungee.api.plugin.Command; import net.md_5.bungee.api.plugin.TabExecutor; import java.util.ArrayList; public class PingCommand extends Command implements TabExecutor { public PingCommand() { super("ping", null); } @Override public void execute(CommandSender sender, String[] args) { if (!(sender instanceof ProxiedPlayer)) return; SmartPlayer smartPlayer = SmartPlayer.getSmartPlayer((ProxiedPlayer) sender); if (args.length > 0) { SmartPlayer smartPlayer1 = SmartPlayer.getSmartPlayerOrNick(args[0]); if (smartPlayer1 != null) { smartPlayer.sendMessage(new ComponentBuilder(smartPlayer1.getComponentFormattedName()).color(ChatColor.GREEN).append(" ping: ").color(ChatColor.YELLOW).append("%d ms", smartPlayer1.getProxiedPlayer().getPing())); } else { smartPlayer.noPlayerFound(args[0]); } } else { smartPlayer.sendSuccessMessage("Your ping is %s%dms%s.", ChatColor.YELLOW, smartPlayer.getProxiedPlayer().getPing(), ChatColor.GREEN); } } @Override public Iterable onTabComplete(CommandSender commandSender, String[] strings) { if (SmartPlayer.isPlayer(commandSender)) { if (strings.length == 1) { return Text.returnStartingEntries(SmartPlayer.getSmartPlayer(commandSender).getNamesOfPlayersOnServer(), strings[0], true); } } return new ArrayList<>(); } }