@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
24 lines (23 loc) • 3.22 kB
JavaScript
;
Object.defineProperties(exports, {
__esModule: { value: true },
[Symbol.toStringTag]: { value: "Module" }
});
const require_network_Identifiers = require("../Identifiers.cjs.cjs");
//#region src/network/handler/SetDefaultGametypeHandler.ts
var SetDefaultGametypeHandler = class {
static NetID = require_network_Identifiers.default.SetDefaultGametypePacket;
async handle(packet, server, session) {
if (!session.getPlayer().isOp()) {
server.getLogger().warn(`Player ${session.getPlayer().getName()} tried to change default gamemode without proper permissions.`);
return;
}
server.getConfig().setGamemode(packet.gamemode, true);
await Promise.all(server.getSessionManager().getAllPlayers().map(async (player) => {
await player.setGamemode(packet.gamemode);
}));
}
};
//#endregion
exports.default = SetDefaultGametypeHandler;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2V0RGVmYXVsdEdhbWV0eXBlSGFuZGxlci5janMuY2pzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZXR3b3JrL2hhbmRsZXIvU2V0RGVmYXVsdEdhbWV0eXBlSGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBsYXllclNlc3Npb24gfSBmcm9tICcuLi8uLi8nO1xuaW1wb3J0IHR5cGUgU2VydmVyIGZyb20gJy4uLy4uL1NlcnZlcic7XG5pbXBvcnQgSWRlbnRpZmllcnMgZnJvbSAnLi4vSWRlbnRpZmllcnMnO1xuaW1wb3J0IHR5cGUgU2V0RGVmYXVsdEdhbWV0eXBlUGFja2V0IGZyb20gJy4uL3BhY2tldC9TZXREZWZhdWx0R2FtZXR5cGVQYWNrZXQnO1xuaW1wb3J0IHR5cGUgUGFja2V0SGFuZGxlciBmcm9tICcuL1BhY2tldEhhbmRsZXInO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZXREZWZhdWx0R2FtZXR5cGVIYW5kbGVyIGltcGxlbWVudHMgUGFja2V0SGFuZGxlcjxTZXREZWZhdWx0R2FtZXR5cGVQYWNrZXQ+IHtcbiAgICBwdWJsaWMgc3RhdGljIE5ldElEID0gSWRlbnRpZmllcnMuU2V0RGVmYXVsdEdhbWV0eXBlUGFja2V0O1xuXG4gICAgcHVibGljIGFzeW5jIGhhbmRsZShwYWNrZXQ6IFNldERlZmF1bHRHYW1ldHlwZVBhY2tldCwgc2VydmVyOiBTZXJ2ZXIsIHNlc3Npb246IFBsYXllclNlc3Npb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCFzZXNzaW9uLmdldFBsYXllcigpLmlzT3AoKSkge1xuICAgICAgICAgICAgc2VydmVyXG4gICAgICAgICAgICAgICAgLmdldExvZ2dlcigpXG4gICAgICAgICAgICAgICAgLndhcm4oXG4gICAgICAgICAgICAgICAgICAgIGBQbGF5ZXIgJHtzZXNzaW9uLmdldFBsYXllcigpLmdldE5hbWUoKX0gdHJpZWQgdG8gY2hhbmdlIGRlZmF1bHQgZ2FtZW1vZGUgd2l0aG91dCBwcm9wZXIgcGVybWlzc2lvbnMuYFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZXJ2ZXIuZ2V0Q29uZmlnKCkuc2V0R2FtZW1vZGUocGFja2V0LmdhbWVtb2RlLCB0cnVlKTtcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBzZXJ2ZXJcbiAgICAgICAgICAgICAgICAuZ2V0U2Vzc2lvbk1hbmFnZXIoKVxuICAgICAgICAgICAgICAgIC5nZXRBbGxQbGF5ZXJzKClcbiAgICAgICAgICAgICAgICAubWFwKGFzeW5jIChwbGF5ZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgcGxheWVyLnNldEdhbWVtb2RlKHBhY2tldC5nYW1lbW9kZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFNQSxJQUFxQiw0QkFBckIsTUFBa0c7Q0FDOUYsT0FBYyxRQUFRLDRCQUFBLFFBQVk7Q0FFbEMsTUFBYSxPQUFPLFFBQWtDLFFBQWdCLFNBQXVDO0VBQ3pHLElBQUksQ0FBQyxRQUFRLFVBQVUsRUFBRSxLQUFLLEdBQUc7R0FDN0IsT0FDSyxVQUFVLEVBQ1YsS0FDRyxVQUFVLFFBQVEsVUFBVSxFQUFFLFFBQVEsRUFBRSw4REFDNUM7R0FDSjtFQUNKO0VBRUEsT0FBTyxVQUFVLEVBQUUsWUFBWSxPQUFPLFVBQVUsSUFBSTtFQUNwRCxNQUFNLFFBQVEsSUFDVixPQUNLLGtCQUFrQixFQUNsQixjQUFjLEVBQ2QsSUFBSSxPQUFPLFdBQVc7R0FDbkIsTUFBTSxPQUFPLFlBQVksT0FBTyxRQUFRO0VBQzVDLENBQUMsQ0FDVDtDQUNKO0FBQ0oifQ==