@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
24 lines (23 loc) • 2.45 kB
JavaScript
import { NetworkUtil } from "../NetworkUtil.es.js";
import Identifiers from "../Identifiers.es.js";
import DataPacket from "./DataPacket.es.js";
//#region src/network/packet/DisconnectPacket.ts
var DisconnectPacket = class extends DataPacket {
static NetID = Identifiers.DisconnectPacket;
reason;
skipMessage;
message;
encodePayload() {
this.writeVarInt(this.reason);
this.writeBoolean(this.skipMessage);
if (!this.skipMessage) NetworkUtil.writeString(this, this.message);
}
decodePayload() {
this.reason = this.readVarInt();
this.skipMessage = this.readBoolean();
if (!this.skipMessage) this.message = NetworkUtil.readString(this);
}
};
//#endregion
export { DisconnectPacket as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzY29ubmVjdFBhY2tldC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvRGlzY29ubmVjdFBhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZXR3b3JrVXRpbCB9IGZyb20gJy4uLy4uL25ldHdvcmsvTmV0d29ya1V0aWwnO1xuaW1wb3J0IElkZW50aWZpZXJzIGZyb20gJy4uL0lkZW50aWZpZXJzJztcbmltcG9ydCBEYXRhUGFja2V0IGZyb20gJy4vRGF0YVBhY2tldCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERpc2Nvbm5lY3RQYWNrZXQgZXh0ZW5kcyBEYXRhUGFja2V0IHtcbiAgICBwdWJsaWMgc3RhdGljIE5ldElEID0gSWRlbnRpZmllcnMuRGlzY29ubmVjdFBhY2tldDtcblxuICAgIHB1YmxpYyByZWFzb24hOiBudW1iZXI7XG4gICAgcHVibGljIHNraXBNZXNzYWdlITogYm9vbGVhbjtcbiAgICBwdWJsaWMgbWVzc2FnZSE6IHN0cmluZztcblxuICAgIHB1YmxpYyBlbmNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVmFySW50KHRoaXMucmVhc29uKTtcbiAgICAgICAgdGhpcy53cml0ZUJvb2xlYW4odGhpcy5za2lwTWVzc2FnZSk7XG5cbiAgICAgICAgaWYgKCF0aGlzLnNraXBNZXNzYWdlKSBOZXR3b3JrVXRpbC53cml0ZVN0cmluZyh0aGlzLCB0aGlzLm1lc3NhZ2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlYXNvbiA9IHRoaXMucmVhZFZhckludCgpO1xuICAgICAgICB0aGlzLnNraXBNZXNzYWdlID0gdGhpcy5yZWFkQm9vbGVhbigpO1xuXG4gICAgICAgIGlmICghdGhpcy5za2lwTWVzc2FnZSkgdGhpcy5tZXNzYWdlID0gTmV0d29ya1V0aWwucmVhZFN0cmluZyh0aGlzKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFJQSxJQUFxQixtQkFBckIsY0FBOEMsV0FBVztDQUNyRCxPQUFjLFFBQVEsWUFBWTtDQUVsQztDQUNBO0NBQ0E7Q0FFQSxnQkFBNkI7RUFDekIsS0FBSyxZQUFZLEtBQUssTUFBTTtFQUM1QixLQUFLLGFBQWEsS0FBSyxXQUFXO0VBRWxDLElBQUksQ0FBQyxLQUFLLGFBQWEsWUFBWSxZQUFZLE1BQU0sS0FBSyxPQUFPO0NBQ3JFO0NBRUEsZ0JBQTZCO0VBQ3pCLEtBQUssU0FBUyxLQUFLLFdBQVc7RUFDOUIsS0FBSyxjQUFjLEtBQUssWUFBWTtFQUVwQyxJQUFJLENBQUMsS0FBSyxhQUFhLEtBQUssVUFBVSxZQUFZLFdBQVcsSUFBSTtDQUNyRTtBQUNKIn0=