@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
37 lines (36 loc) • 5.21 kB
JavaScript
;
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/GameruleCommand.ts
var GameruleCommand = class extends require_command_Command.Command {
constructor() {
super({
id: "minecraft:gamerule",
description: "Set gamerule value.",
permission: "minecraft.command.gamerule"
});
}
async register(dispatcher) {
dispatcher.register((0, _jsprismarine_brigadier.literal)("gamerule").then((0, _jsprismarine_brigadier.argument)("name", (0, _jsprismarine_brigadier.string)()).then((0, _jsprismarine_brigadier.argument)("value", (0, _jsprismarine_brigadier.string)()).executes(async (context) => {
const source = context.getSource();
const name = context.getArgument("name");
let value = context.getArgument("value").toLowerCase() === "true" ? true : false;
source.getWorld().getGameruleManager().setGamerule(name, value, true);
const res = `Set ${name} to ${value}`;
await source.sendMessage(res);
return res;
}))).executes(async (context) => {
const source = context.getSource();
const gamerules = Array.from(source.getWorld().getGameruleManager().getGamerules());
await source.sendMessage(gamerules.map(([id, [value]]) => `§a${id}§r: §b${value}§r`).join(", "));
}));
}
};
//#endregion
exports.default = GameruleCommand;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2FtZXJ1bGVDb21tYW5kLmNqcy5janMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmQvdmFuaWxsYS9HYW1lcnVsZUNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb21tYW5kRGlzcGF0Y2hlciB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvYnJpZ2FkaWVyJztcbmltcG9ydCB7IGFyZ3VtZW50LCBsaXRlcmFsLCBzdHJpbmcgfSBmcm9tICdAanNwcmlzbWFyaW5lL2JyaWdhZGllcic7XG5cbmltcG9ydCB0eXBlIFBsYXllciBmcm9tICcuLi8uLi9QbGF5ZXInO1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4uL0NvbW1hbmQnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHYW1lcnVsZUNvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGlkOiAnbWluZWNyYWZ0OmdhbWVydWxlJyxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU2V0IGdhbWVydWxlIHZhbHVlLicsXG4gICAgICAgICAgICBwZXJtaXNzaW9uOiAnbWluZWNyYWZ0LmNvbW1hbmQuZ2FtZXJ1bGUnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyByZWdpc3RlcihkaXNwYXRjaGVyOiBDb21tYW5kRGlzcGF0Y2hlcjxhbnk+KSB7XG4gICAgICAgIGRpc3BhdGNoZXIucmVnaXN0ZXIoXG4gICAgICAgICAgICBsaXRlcmFsKCdnYW1lcnVsZScpXG4gICAgICAgICAgICAgICAgLnRoZW4oXG4gICAgICAgICAgICAgICAgICAgIGFyZ3VtZW50KCduYW1lJywgc3RyaW5nKCkpLnRoZW4oXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmd1bWVudCgndmFsdWUnLCBzdHJpbmcoKSkuZXhlY3V0ZXMoYXN5bmMgKGNvbnRleHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBjb250ZXh0LmdldFNvdXJjZSgpIGFzIFBsYXllcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuYW1lID0gY29udGV4dC5nZXRBcmd1bWVudCgnbmFtZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IGNvbnRleHQuZ2V0QXJndW1lbnQoJ3ZhbHVlJykudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnID8gdHJ1ZSA6IGZhbHNlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlLmdldFdvcmxkKCkuZ2V0R2FtZXJ1bGVNYW5hZ2VyKCkuc2V0R2FtZXJ1bGUobmFtZSwgdmFsdWUsIHRydWUpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzID0gYFNldCAke25hbWV9IHRvICR7dmFsdWV9YDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCBzb3VyY2Uuc2VuZE1lc3NhZ2UocmVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZXhlY3V0ZXMoYXN5bmMgKGNvbnRleHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc291cmNlID0gY29udGV4dC5nZXRTb3VyY2UoKSBhcyBQbGF5ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdhbWVydWxlcyA9IEFycmF5LmZyb20oc291cmNlLmdldFdvcmxkKCkuZ2V0R2FtZXJ1bGVNYW5hZ2VyKCkuZ2V0R2FtZXJ1bGVzKCkpO1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBzb3VyY2Uuc2VuZE1lc3NhZ2UoZ2FtZXJ1bGVzLm1hcCgoW2lkLCBbdmFsdWVdXSkgPT4gYMKnYSR7aWR9wqdyOiDCp2Ike3ZhbHVlfcKncmApLmpvaW4oJywgJykpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFNQSxJQUFxQixrQkFBckIsY0FBNkMsd0JBQUEsUUFBUTtDQUNqRCxjQUFxQjtFQUNqQixNQUFNO0dBQ0YsSUFBSTtHQUNKLGFBQWE7R0FDYixZQUFZO0VBQ2hCLENBQUM7Q0FDTDtDQUVBLE1BQWEsU0FBUyxZQUFvQztFQUN0RCxXQUFXLFVBQUEsR0FBQSx3QkFBQSxTQUNDLFVBQVUsRUFDYixNQUFBLEdBQUEsd0JBQUEsVUFDWSxTQUFBLEdBQUEsd0JBQUEsUUFBZSxDQUFDLEVBQUUsTUFBQSxHQUFBLHdCQUFBLFVBQ2QsVUFBQSxHQUFBLHdCQUFBLFFBQWdCLENBQUMsRUFBRSxTQUFTLE9BQU8sWUFBWTtHQUNwRCxNQUFNLFNBQVMsUUFBUSxVQUFVO0dBQ2pDLE1BQU0sT0FBTyxRQUFRLFlBQVksTUFBTTtHQUN2QyxJQUFJLFFBQVEsUUFBUSxZQUFZLE9BQU8sRUFBRSxZQUFZLE1BQU0sU0FBUyxPQUFPO0dBRTNFLE9BQU8sU0FBUyxFQUFFLG1CQUFtQixFQUFFLFlBQVksTUFBTSxPQUFPLElBQUk7R0FFcEUsTUFBTSxNQUFNLE9BQU8sS0FBSyxNQUFNO0dBQzlCLE1BQU0sT0FBTyxZQUFZLEdBQUc7R0FDNUIsT0FBTztFQUNYLENBQUMsQ0FDTCxDQUNKLEVBQ0MsU0FBUyxPQUFPLFlBQVk7R0FDekIsTUFBTSxTQUFTLFFBQVEsVUFBVTtHQUNqQyxNQUFNLFlBQVksTUFBTSxLQUFLLE9BQU8sU0FBUyxFQUFFLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztHQUNsRixNQUFNLE9BQU8sWUFBWSxVQUFVLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxLQUFLLEdBQUcsUUFBUSxNQUFNLEdBQUcsRUFBRSxLQUFLLElBQUksQ0FBQztFQUNuRyxDQUFDLENBQ1Q7Q0FDSjtBQUNKIn0=