package cn.yescallop.essentialsnk.command.defaults; import cn.nukkit.Player; import cn.nukkit.command.CommandSender; import cn.nukkit.utils.TextFormat; import cn.yescallop.essentialsnk.EssentialsAPI; import cn.yescallop.essentialsnk.Language; import cn.yescallop.essentialsnk.command.CommandBase; public class KickAllCommand extends CommandBase { public KickAllCommand(EssentialsAPI api) { super("kickall", api); } public boolean execute(CommandSender sender, String label, String[] args) { if (!this.testPermission(sender)) { return false; } if (args.length != 0) { this.sendUsage(sender); return false; } int count = api.getServer().getOnlinePlayers().size(); if (count == 0 || (sender instanceof Player && count == 1)) { sender.sendMessage(TextFormat.RED + Language.translate("commands.kickall.noplayer")); return false; } String reason = String.join(" ", args); for (Player player : api.getServer().getOnlinePlayers().values()) { if (player != sender) { player.kick(reason); } } sender.sendMessage(Language.translate("commands.kickall.success")); return true; } }