@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
40 lines (35 loc) • 4.42 kB
JavaScript
;
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const brigadier = require('@jsprismarine/brigadier');
const chat_Chat = require('../../chat/Chat.cjs.cjs');
const events_chat_ChatEvent = require('../../events/chat/ChatEvent.cjs.cjs');
const command_Command = require('../Command.cjs.cjs');
class MeCommand extends command_Command.Command {
constructor() {
super({
id: "minecraft:me",
description: "Displays custom message in chat.",
permission: "minecraft.command.me"
});
}
async register(dispatcher) {
dispatcher.register(
brigadier.literal("me").then(
brigadier.argument("message", brigadier.greedyString()).executes(async (context) => {
const source = context.getSource();
const message = context.getArgument("message");
const messageToSend = `*${source.getName()}: ${message}`;
const event = new events_chat_ChatEvent.default(
new chat_Chat.Chat({
sender: source,
message: messageToSend
})
);
await source.getServer().emit("chat", event);
})
)
);
}
}
exports.default = MeCommand;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVDb21tYW5kLmNqcy5janMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kL3ZhbmlsbGEvTWVDb21tYW5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tbWFuZERpc3BhdGNoZXIgfSBmcm9tICdAanNwcmlzbWFyaW5lL2JyaWdhZGllcic7XG5pbXBvcnQgeyBhcmd1bWVudCwgZ3JlZWR5U3RyaW5nLCBsaXRlcmFsIH0gZnJvbSAnQGpzcHJpc21hcmluZS9icmlnYWRpZXInO1xuXG5pbXBvcnQgeyBDaGF0IH0gZnJvbSAnLi4vLi4vY2hhdC9DaGF0JztcbmltcG9ydCBDaGF0RXZlbnQgZnJvbSAnLi4vLi4vZXZlbnRzL2NoYXQvQ2hhdEV2ZW50JztcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICcuLi9Db21tYW5kJztcbmltcG9ydCB0eXBlIFBsYXllciBmcm9tICcuLi8uLi9QbGF5ZXInO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZUNvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGlkOiAnbWluZWNyYWZ0Om1lJyxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGlzcGxheXMgY3VzdG9tIG1lc3NhZ2UgaW4gY2hhdC4nLFxuICAgICAgICAgICAgcGVybWlzc2lvbjogJ21pbmVjcmFmdC5jb21tYW5kLm1lJ1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVnaXN0ZXIoZGlzcGF0Y2hlcjogQ29tbWFuZERpc3BhdGNoZXI8YW55Pikge1xuICAgICAgICBkaXNwYXRjaGVyLnJlZ2lzdGVyKFxuICAgICAgICAgICAgbGl0ZXJhbCgnbWUnKS50aGVuKFxuICAgICAgICAgICAgICAgIGFyZ3VtZW50KCdtZXNzYWdlJywgZ3JlZWR5U3RyaW5nKCkpLmV4ZWN1dGVzKGFzeW5jIChjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvdXJjZSA9IGNvbnRleHQuZ2V0U291cmNlKCkgYXMgUGxheWVyO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gY29udGV4dC5nZXRBcmd1bWVudCgnbWVzc2FnZScpIGFzIHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZVRvU2VuZCA9IGAqJHtzb3VyY2UuZ2V0TmFtZSgpfTogJHttZXNzYWdlfWA7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgQ2hhdEV2ZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IENoYXQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRlcjogc291cmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2VUb1NlbmRcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHNvdXJjZS5nZXRTZXJ2ZXIoKS5lbWl0KCdjaGF0JywgZXZlbnQpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbW1hbmQiLCJsaXRlcmFsIiwiYXJndW1lbnQiLCJncmVlZHlTdHJpbmciLCJDaGF0RXZlbnQiLCJDaGF0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFRQSxNQUFxQixrQkFBa0JBLHVCQUFRLENBQUE7QUFBQSxFQUNwQyxXQUFjLEdBQUE7QUFDakIsSUFBTSxLQUFBLENBQUE7QUFBQSxNQUNGLEVBQUksRUFBQSxjQUFBO0FBQUEsTUFDSixXQUFhLEVBQUEsa0NBQUE7QUFBQSxNQUNiLFVBQVksRUFBQTtBQUFBLEtBQ2YsQ0FBQTtBQUFBO0FBQ0wsRUFFQSxNQUFhLFNBQVMsVUFBb0MsRUFBQTtBQUN0RCxJQUFXLFVBQUEsQ0FBQSxRQUFBO0FBQUEsTUFDUEMsaUJBQUEsQ0FBUSxJQUFJLENBQUUsQ0FBQSxJQUFBO0FBQUEsUUFDVkMsbUJBQVMsU0FBVyxFQUFBQyxzQkFBQSxFQUFjLENBQUUsQ0FBQSxRQUFBLENBQVMsT0FBTyxPQUFZLEtBQUE7QUFDNUQsVUFBTSxNQUFBLE1BQUEsR0FBUyxRQUFRLFNBQVUsRUFBQTtBQUNqQyxVQUFNLE1BQUEsT0FBQSxHQUFVLE9BQVEsQ0FBQSxXQUFBLENBQVksU0FBUyxDQUFBO0FBQzdDLFVBQUEsTUFBTSxnQkFBZ0IsQ0FBSSxDQUFBLEVBQUEsTUFBQSxDQUFPLE9BQVEsRUFBQyxLQUFLLE9BQU8sQ0FBQSxDQUFBO0FBRXRELFVBQUEsTUFBTSxRQUFRLElBQUlDLDZCQUFBO0FBQUEsWUFDZCxJQUFJQyxjQUFLLENBQUE7QUFBQSxjQUNMLE1BQVEsRUFBQSxNQUFBO0FBQUEsY0FDUixPQUFTLEVBQUE7QUFBQSxhQUNaO0FBQUEsV0FDTDtBQUNBLFVBQUEsTUFBTSxNQUFPLENBQUEsU0FBQSxFQUFZLENBQUEsSUFBQSxDQUFLLFFBQVEsS0FBSyxDQUFBO0FBQUEsU0FDOUM7QUFBQTtBQUNMLEtBQ0o7QUFBQTtBQUVSOzs7OyJ9