public function onCommand(CommandSender $sender, Command $cmd, $label, array $args) { if ($cmd->getName() != "players") { return false; } $tab = [[mc::_("Player"), mc::_("World"), mc::_("Pos"), mc::_("Health"), mc::_("Mode")]]; $cnt = 0; foreach ($this->owner->getServer()->getOnlinePlayers() as $player) { if (!$player->isOnline() || $sender instanceof Player && !$sender->canSee($player)) { continue; } $pos = $player->getPosition(); $j = count($tab); $mode = substr(MPMU::gamemodeStr($player->getGamemode()), 0, 4); $tab[] = [$player->getName(), $player->getLevel()->getName(), $pos->getFloorX() . "," . $pos->getFloorY() . "," . $pos->getFloorZ(), intval($player->getHealth()) . '/' . intval($player->getMaxHealth()), $mode]; ++$cnt; } if (!$cnt) { $sender->sendMessage(TextFormat::RED . mc::_("Nobody is on-line at the moment")); return true; } $tab[0][0] = mc::_("Players: %1%", $cnt); $pageNumber = $this->getPageNumber($args); return $this->paginateTable($sender, $pageNumber, $tab); }
public function onCommand(CommandSender $sender, Command $cmd, $label, array $args) { if ($cmd->getName() != "ops") { return false; } $txt = [""]; $pageNumber = $this->getPageNumber($args); $cnt = 0; foreach (array_keys($this->owner->getServer()->getOps()->getAll()) as $opname) { $p = $this->owner->getServer()->getPlayer($opname); if ($p && ($p->isOnline() && (!$sender instanceof Player || $sender->canSee($p)))) { ++$cnt; $txt[] = TextFormat::BLUE . mc::_("%1% (online)", $opname); } else { $txt[] = TextFormat::RED . "{$opname}"; } } $txt[0] = mc::_("Server Ops (Online:%1%)", $cnt); return $this->paginateText($sender, $pageNumber, $txt); }