UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

30 lines (29 loc) 3.27 kB
import { Command } from "../Command.es.js"; import { literal } from "@jsprismarine/brigadier"; //#region src/command/jsprismarine/TpsCommand.ts var TpsCommand = class extends Command { constructor() { super({ id: "jsprismarine:tps", description: "Get current TPS.", permission: "jsprismarine.command.tps" }); } formatTPS(tps) { let color = "§4"; if (tps >= 19) color = "§2"; else if (tps >= 15) color = "§e"; return `${color}${tps.toFixed(2)}§r`; } async register(dispatcher) { dispatcher.register(literal("tps").executes(async (context) => { const source = context.getSource(); const tps = source.getServer().getTPS(); const tick = source.getServer().getTick(); await source.sendMessage(`TPS: ${this.formatTPS(tps)} (Tick: ${tick})`); })); } }; //#endregion export { TpsCommand as default }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHBzQ29tbWFuZC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZC9qc3ByaXNtYXJpbmUvVHBzQ29tbWFuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbW1hbmREaXNwYXRjaGVyIH0gZnJvbSAnQGpzcHJpc21hcmluZS9icmlnYWRpZXInO1xuaW1wb3J0IHsgbGl0ZXJhbCB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvYnJpZ2FkaWVyJztcblxuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4uL0NvbW1hbmQnO1xuaW1wb3J0IHR5cGUgUGxheWVyIGZyb20gJy4uLy4uL1BsYXllcic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRwc0NvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGlkOiAnanNwcmlzbWFyaW5lOnRwcycsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0dldCBjdXJyZW50IFRQUy4nLFxuICAgICAgICAgICAgcGVybWlzc2lvbjogJ2pzcHJpc21hcmluZS5jb21tYW5kLnRwcydcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXRUUFModHBzOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICBsZXQgY29sb3IgPSAnwqc0JztcblxuICAgICAgICBpZiAodHBzID49IDE5KSBjb2xvciA9ICfCpzInO1xuICAgICAgICBlbHNlIGlmICh0cHMgPj0gMTUpIGNvbG9yID0gJ8KnZSc7XG5cbiAgICAgICAgcmV0dXJuIGAke2NvbG9yfSR7dHBzLnRvRml4ZWQoMil9wqdyYDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVnaXN0ZXIoZGlzcGF0Y2hlcjogQ29tbWFuZERpc3BhdGNoZXI8YW55Pikge1xuICAgICAgICBkaXNwYXRjaGVyLnJlZ2lzdGVyKFxuICAgICAgICAgICAgbGl0ZXJhbCgndHBzJykuZXhlY3V0ZXMoYXN5bmMgKGNvbnRleHQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBjb250ZXh0LmdldFNvdXJjZSgpIGFzIFBsYXllcjtcbiAgICAgICAgICAgICAgICBjb25zdCB0cHMgPSBzb3VyY2UuZ2V0U2VydmVyKCkuZ2V0VFBTKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdGljayA9IHNvdXJjZS5nZXRTZXJ2ZXIoKS5nZXRUaWNrKCk7XG5cbiAgICAgICAgICAgICAgICBhd2FpdCBzb3VyY2Uuc2VuZE1lc3NhZ2UoYFRQUzogJHt0aGlzLmZvcm1hdFRQUyh0cHMpfSAoVGljazogJHt0aWNrfSlgKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFNQSxJQUFxQixhQUFyQixjQUF3QyxRQUFRO0NBQzVDLGNBQXFCO0VBQ2pCLE1BQU07R0FDRixJQUFJO0dBQ0osYUFBYTtHQUNiLFlBQVk7RUFDaEIsQ0FBQztDQUNMO0NBRUEsVUFBa0IsS0FBcUI7RUFDbkMsSUFBSSxRQUFRO0VBRVosSUFBSSxPQUFPLElBQUksUUFBUTtPQUNsQixJQUFJLE9BQU8sSUFBSSxRQUFRO0VBRTVCLE9BQU8sR0FBRyxRQUFRLElBQUksUUFBUSxDQUFDLEVBQUU7Q0FDckM7Q0FFQSxNQUFhLFNBQVMsWUFBb0M7RUFDdEQsV0FBVyxTQUNQLFFBQVEsS0FBSyxFQUFFLFNBQVMsT0FBTyxZQUFZO0dBQ3ZDLE1BQU0sU0FBUyxRQUFRLFVBQVU7R0FDakMsTUFBTSxNQUFNLE9BQU8sVUFBVSxFQUFFLE9BQU87R0FDdEMsTUFBTSxPQUFPLE9BQU8sVUFBVSxFQUFFLFFBQVE7R0FFeEMsTUFBTSxPQUFPLFlBQVksUUFBUSxLQUFLLFVBQVUsR0FBRyxFQUFFLFVBQVUsS0FBSyxFQUFFO0VBQzFFLENBQUMsQ0FDTDtDQUNKO0FBQ0oifQ==