setPermission(DefaultPermissionNames::COMMAND_LIST); } public function execute(CommandSender $sender, string $commandLabel, array $args){ $playerNames = array_map(function(Player $player) : string{ return $player->getName(); }, array_filter($sender->getServer()->getOnlinePlayers(), function(Player $player) use ($sender) : bool{ return !($sender instanceof Player) || $sender->canSee($player); })); sort($playerNames, SORT_STRING); $sender->sendMessage(KnownTranslationFactory::commands_players_list((string) count($playerNames), (string) $sender->getServer()->getMaxPlayers())); $sender->sendMessage(implode(", ", $playerNames)); return true; } }