mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-06-28 06:09:57 +00:00
Improved ListCommand and fixed crash when no players are online
I <3 closures
This commit is contained in:
parent
75cc2d6914
commit
9e99252817
@ -43,18 +43,14 @@ class ListCommand extends VanillaCommand{
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$online = "";
|
$playerNames = array_map(function(Player $player){
|
||||||
$onlineCount = 0;
|
return $player->getName();
|
||||||
|
}, array_filter($sender->getServer()->getOnlinePlayers(), function(Player $player) use ($sender){
|
||||||
|
return $player->isOnline() and (!($sender instanceof Player) or $sender->canSee($player));
|
||||||
|
}));
|
||||||
|
|
||||||
foreach($sender->getServer()->getOnlinePlayers() as $player){
|
$sender->sendMessage(new TranslationContainer("commands.players.list", [count($playerNames), $sender->getServer()->getMaxPlayers()]));
|
||||||
if($player->isOnline() and (!($sender instanceof Player) or $sender->canSee($player))){
|
$sender->sendMessage(implode(", ", $playerNames));
|
||||||
$online .= $player->getDisplayName() . ", ";
|
|
||||||
++$onlineCount;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$sender->sendMessage(new TranslationContainer("commands.players.list", [$onlineCount, $sender->getServer()->getMaxPlayers()]));
|
|
||||||
$sender->sendMessage(substr($online, 0, -2));
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user