UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

34 lines (33 loc) 3.87 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); require("../../_virtual/_rolldown/runtime.cjs.cjs"); const require_command_Command = require("../Command.cjs.cjs"); let _jsprismarine_brigadier = require("@jsprismarine/brigadier"); //#region src/command/vanilla/ListCommand.ts var ListCommand = class extends require_command_Command.Command { constructor() { super({ id: "minecraft:list", description: "Lists players on the server.", permission: "minecraft.command.list" }); } async register(dispatcher) { dispatcher.register((0, _jsprismarine_brigadier.literal)("list").executes(async (context) => { const source = context.getSource(); const players = source.getServer().getSessionManager().getAllPlayers(); const playerArray = Array.from(players); const maxPlayers = source.getServer().getConfig().getMaxPlayers(); const counter = playerArray.length; const answer = playerArray.map((player) => player.getName()).join(", "); await source.sendMessage(`There are ${counter}/${maxPlayers} players online:`); if (answer) await source.sendMessage(answer); })); } }; //#endregion exports.default = ListCommand; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlzdENvbW1hbmQuY2pzLmNqcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZC92YW5pbGxhL0xpc3RDb21tYW5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tbWFuZERpc3BhdGNoZXIgfSBmcm9tICdAanNwcmlzbWFyaW5lL2JyaWdhZGllcic7XG5pbXBvcnQgeyBsaXRlcmFsIH0gZnJvbSAnQGpzcHJpc21hcmluZS9icmlnYWRpZXInO1xuXG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnLi4vQ29tbWFuZCc7XG5pbXBvcnQgdHlwZSBQbGF5ZXIgZnJvbSAnLi4vLi4vUGxheWVyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGlzdENvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGlkOiAnbWluZWNyYWZ0Omxpc3QnLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdMaXN0cyBwbGF5ZXJzIG9uIHRoZSBzZXJ2ZXIuJyxcbiAgICAgICAgICAgIHBlcm1pc3Npb246ICdtaW5lY3JhZnQuY29tbWFuZC5saXN0J1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVnaXN0ZXIoZGlzcGF0Y2hlcjogQ29tbWFuZERpc3BhdGNoZXI8YW55Pikge1xuICAgICAgICBkaXNwYXRjaGVyLnJlZ2lzdGVyKFxuICAgICAgICAgICAgbGl0ZXJhbCgnbGlzdCcpLmV4ZWN1dGVzKGFzeW5jIChjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc291cmNlID0gY29udGV4dC5nZXRTb3VyY2UoKSBhcyBQbGF5ZXI7XG4gICAgICAgICAgICAgICAgY29uc3QgcGxheWVycyA9IHNvdXJjZS5nZXRTZXJ2ZXIoKS5nZXRTZXNzaW9uTWFuYWdlcigpLmdldEFsbFBsYXllcnMoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwbGF5ZXJBcnJheSA9IEFycmF5LmZyb20ocGxheWVycyk7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF4UGxheWVycyA9IHNvdXJjZS5nZXRTZXJ2ZXIoKS5nZXRDb25maWcoKS5nZXRNYXhQbGF5ZXJzKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgY291bnRlciA9IHBsYXllckFycmF5Lmxlbmd0aDtcbiAgICAgICAgICAgICAgICBjb25zdCBhbnN3ZXIgPSBwbGF5ZXJBcnJheS5tYXAoKHBsYXllcikgPT4gcGxheWVyLmdldE5hbWUoKSkuam9pbignLCAnKTtcblxuICAgICAgICAgICAgICAgIGF3YWl0IHNvdXJjZS5zZW5kTWVzc2FnZShgVGhlcmUgYXJlICR7Y291bnRlcn0vJHttYXhQbGF5ZXJzfSBwbGF5ZXJzIG9ubGluZTpgKTtcbiAgICAgICAgICAgICAgICBpZiAoYW5zd2VyKSBhd2FpdCBzb3VyY2Uuc2VuZE1lc3NhZ2UoYW5zd2VyKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFNQSxJQUFxQixjQUFyQixjQUF5Qyx3QkFBQSxRQUFRO0NBQzdDLGNBQXFCO0VBQ2pCLE1BQU07R0FDRixJQUFJO0dBQ0osYUFBYTtHQUNiLFlBQVk7RUFDaEIsQ0FBQztDQUNMO0NBRUEsTUFBYSxTQUFTLFlBQW9DO0VBQ3RELFdBQVcsVUFBQSxHQUFBLHdCQUFBLFNBQ0MsTUFBTSxFQUFFLFNBQVMsT0FBTyxZQUFZO0dBQ3hDLE1BQU0sU0FBUyxRQUFRLFVBQVU7R0FDakMsTUFBTSxVQUFVLE9BQU8sVUFBVSxFQUFFLGtCQUFrQixFQUFFLGNBQWM7R0FDckUsTUFBTSxjQUFjLE1BQU0sS0FBSyxPQUFPO0dBQ3RDLE1BQU0sYUFBYSxPQUFPLFVBQVUsRUFBRSxVQUFVLEVBQUUsY0FBYztHQUNoRSxNQUFNLFVBQVUsWUFBWTtHQUM1QixNQUFNLFNBQVMsWUFBWSxLQUFLLFdBQVcsT0FBTyxRQUFRLENBQUMsRUFBRSxLQUFLLElBQUk7R0FFdEUsTUFBTSxPQUFPLFlBQVksYUFBYSxRQUFRLEdBQUcsV0FBVyxpQkFBaUI7R0FDN0UsSUFBSSxRQUFRLE1BQU0sT0FBTyxZQUFZLE1BQU07RUFDL0MsQ0FBQyxDQUNMO0NBQ0o7QUFDSiJ9