UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

41 lines (40 loc) 5.43 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); require("../../_virtual/_rolldown/runtime.cjs.cjs"); const require_events_chat_ChatEvent = require("../../events/chat/ChatEvent.cjs.cjs"); const require_command_Command = require("../Command.cjs.cjs"); const require_command_CommandArguments = require("../CommandArguments.cjs.cjs"); const require_chat_Chat = require("../../chat/Chat.cjs.cjs"); let _jsprismarine_brigadier = require("@jsprismarine/brigadier"); //#region src/command/vanilla/DeopCommand.ts var DeopCommand = class extends require_command_Command.Command { constructor() { super({ id: "minecraft:deop", description: `Remove a player's op status.`, permission: "minecraft.command.deop" }); } async register(dispatcher) { dispatcher.register((0, _jsprismarine_brigadier.literal)("deop").then((0, _jsprismarine_brigadier.argument)("player", new require_command_CommandArguments.PlayerArgumentCommand({ name: "player" })).executes(async (context) => { const source = context.getSource(); const target = source.getServer().getSessionManager().getPlayerByExactName(context.getArgument("player")); await source.getServer().getPermissionManager().setOp(context.getArgument("player"), false); if (target) { const event = new require_events_chat_ChatEvent.default(new require_chat_Chat.Chat({ sender: source, message: "§eYou are no longer op!", channel: `*.player.${target.getName()}` })); await target.getServer().emit("chat", event); } return `Made ${context.getArgument("player")} no longer a server operator`; }))); } }; //#endregion exports.default = DeopCommand; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVvcENvbW1hbmQuY2pzLmNqcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZC92YW5pbGxhL0Rlb3BDb21tYW5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tbWFuZERpc3BhdGNoZXIgfSBmcm9tICdAanNwcmlzbWFyaW5lL2JyaWdhZGllcic7XG5pbXBvcnQgeyBhcmd1bWVudCwgbGl0ZXJhbCB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvYnJpZ2FkaWVyJztcbmltcG9ydCB7IENoYXQgfSBmcm9tICcuLi8uLi9jaGF0L0NoYXQnO1xuaW1wb3J0IENoYXRFdmVudCBmcm9tICcuLi8uLi9ldmVudHMvY2hhdC9DaGF0RXZlbnQnO1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4uL0NvbW1hbmQnO1xuaW1wb3J0IHR5cGUgUGxheWVyIGZyb20gJy4uLy4uL1BsYXllcic7XG5pbXBvcnQgeyBQbGF5ZXJBcmd1bWVudENvbW1hbmQgfSBmcm9tICcuLi9Db21tYW5kQXJndW1lbnRzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVvcENvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGlkOiAnbWluZWNyYWZ0OmRlb3AnLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IGBSZW1vdmUgYSBwbGF5ZXIncyBvcCBzdGF0dXMuYCxcbiAgICAgICAgICAgIHBlcm1pc3Npb246ICdtaW5lY3JhZnQuY29tbWFuZC5kZW9wJ1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVnaXN0ZXIoZGlzcGF0Y2hlcjogQ29tbWFuZERpc3BhdGNoZXI8YW55Pikge1xuICAgICAgICBkaXNwYXRjaGVyLnJlZ2lzdGVyKFxuICAgICAgICAgICAgbGl0ZXJhbCgnZGVvcCcpLnRoZW4oXG4gICAgICAgICAgICAgICAgYXJndW1lbnQoJ3BsYXllcicsIG5ldyBQbGF5ZXJBcmd1bWVudENvbW1hbmQoeyBuYW1lOiAncGxheWVyJyB9KSkuZXhlY3V0ZXMoYXN5bmMgKGNvbnRleHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc291cmNlID0gY29udGV4dC5nZXRTb3VyY2UoKSBhcyBQbGF5ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IHNvdXJjZVxuICAgICAgICAgICAgICAgICAgICAgICAgLmdldFNlcnZlcigpXG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2V0U2Vzc2lvbk1hbmFnZXIoKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmdldFBsYXllckJ5RXhhY3ROYW1lKGNvbnRleHQuZ2V0QXJndW1lbnQoJ3BsYXllcicpKTsgLy8gVE9ETzogYnkgbmFtZSBub3QgZXhhY3RcblxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBzb3VyY2UuZ2V0U2VydmVyKCkuZ2V0UGVybWlzc2lvbk1hbmFnZXIoKS5zZXRPcChjb250ZXh0LmdldEFyZ3VtZW50KCdwbGF5ZXInKSwgZmFsc2UpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IENoYXRFdmVudChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgQ2hhdCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRlcjogc291cmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnwqdlWW91IGFyZSBubyBsb25nZXIgb3AhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbDogYCoucGxheWVyLiR7dGFyZ2V0LmdldE5hbWUoKX1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0YXJnZXQuZ2V0U2VydmVyKCkuZW1pdCgnY2hhdCcsIGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBgTWFkZSAke2NvbnRleHQuZ2V0QXJndW1lbnQoJ3BsYXllcicpfSBubyBsb25nZXIgYSBzZXJ2ZXIgb3BlcmF0b3JgO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFRQSxJQUFxQixjQUFyQixjQUF5Qyx3QkFBQSxRQUFRO0NBQzdDLGNBQXFCO0VBQ2pCLE1BQU07R0FDRixJQUFJO0dBQ0osYUFBYTtHQUNiLFlBQVk7RUFDaEIsQ0FBQztDQUNMO0NBRUEsTUFBYSxTQUFTLFlBQW9DO0VBQ3RELFdBQVcsVUFBQSxHQUFBLHdCQUFBLFNBQ0MsTUFBTSxFQUFFLE1BQUEsR0FBQSx3QkFBQSxVQUNILFVBQVUsSUFBSSxpQ0FBQSxzQkFBc0IsRUFBRSxNQUFNLFNBQVMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxPQUFPLFlBQVk7R0FDMUYsTUFBTSxTQUFTLFFBQVEsVUFBVTtHQUNqQyxNQUFNLFNBQVMsT0FDVixVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLHFCQUFxQixRQUFRLFlBQVksUUFBUSxDQUFDO0dBRXZELE1BQU0sT0FBTyxVQUFVLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxRQUFRLFlBQVksUUFBUSxHQUFHLEtBQUs7R0FFMUYsSUFBSSxRQUFRO0lBQ1IsTUFBTSxRQUFRLElBQUksOEJBQUEsUUFDZCxJQUFJLGtCQUFBLEtBQUs7S0FDTCxRQUFRO0tBQ1IsU0FBUztLQUNULFNBQVMsWUFBWSxPQUFPLFFBQVE7SUFDeEMsQ0FBQyxDQUNMO0lBQ0EsTUFBTSxPQUFPLFVBQVUsRUFBRSxLQUFLLFFBQVEsS0FBSztHQUMvQztHQUVBLE9BQU8sUUFBUSxRQUFRLFlBQVksUUFBUSxFQUFFO0VBQ2pELENBQUMsQ0FDTCxDQUNKO0NBQ0o7QUFDSiJ9