@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
28 lines (27 loc) • 2.81 kB
JavaScript
import Identifiers from "../Identifiers.es.js";
import DataPacket from "./DataPacket.es.js";
//#region src/network/packet/LevelChunkPacket.ts
var LevelChunkPacket = class extends DataPacket {
static NetID = Identifiers.LevelChunkPacket;
chunkX;
chunkZ;
subChunkCount;
clientSubChunkRequestsEnabled;
data;
encodePayload() {
this.writeVarInt(this.chunkX);
this.writeVarInt(this.chunkZ);
this.writeVarInt(0);
if (!this.clientSubChunkRequestsEnabled) this.writeUnsignedVarInt(this.subChunkCount);
else {
this.writeUnsignedVarInt(-2);
this.writeShortLE(this.subChunkCount);
}
this.writeBoolean(false);
this.writeUnsignedVarInt(Buffer.byteLength(this.data));
this.write(this.data);
}
};
//#endregion
export { LevelChunkPacket as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGV2ZWxDaHVua1BhY2tldC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvTGV2ZWxDaHVua1BhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSWRlbnRpZmllcnMgZnJvbSAnLi4vSWRlbnRpZmllcnMnO1xuaW1wb3J0IERhdGFQYWNrZXQgZnJvbSAnLi9EYXRhUGFja2V0JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGV2ZWxDaHVua1BhY2tldCBleHRlbmRzIERhdGFQYWNrZXQge1xuICAgIHB1YmxpYyBzdGF0aWMgTmV0SUQgPSBJZGVudGlmaWVycy5MZXZlbENodW5rUGFja2V0O1xuXG4gICAgcHVibGljIGNodW5rWCE6IG51bWJlcjtcbiAgICBwdWJsaWMgY2h1bmtaITogbnVtYmVyO1xuICAgIHB1YmxpYyBzdWJDaHVua0NvdW50ITogbnVtYmVyO1xuICAgIHB1YmxpYyBjbGllbnRTdWJDaHVua1JlcXVlc3RzRW5hYmxlZCE6IGJvb2xlYW47XG4gICAgcHVibGljIGRhdGE6IGFueTtcblxuICAgIHB1YmxpYyBlbmNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVmFySW50KHRoaXMuY2h1bmtYKTtcbiAgICAgICAgdGhpcy53cml0ZVZhckludCh0aGlzLmNodW5rWik7XG5cbiAgICAgICAgdGhpcy53cml0ZVZhckludCgwKTsgLy8gRGltZW5zaW9uSURcblxuICAgICAgICAvLyBUT0RPOiBSRSB0aGlzIHBhcnRcbiAgICAgICAgaWYgKCF0aGlzLmNsaWVudFN1YkNodW5rUmVxdWVzdHNFbmFibGVkKSB7XG4gICAgICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRWYXJJbnQodGhpcy5zdWJDaHVua0NvdW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMud3JpdGVVbnNpZ25lZFZhckludCgtMik7XG4gICAgICAgICAgICB0aGlzLndyaXRlU2hvcnRMRSh0aGlzLnN1YkNodW5rQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53cml0ZUJvb2xlYW4oZmFsc2UpOyAvLyBDYWNoZWRcbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkVmFySW50KEJ1ZmZlci5ieXRlTGVuZ3RoKHRoaXMuZGF0YSkpO1xuICAgICAgICB0aGlzLndyaXRlKHRoaXMuZGF0YSk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFHQSxJQUFxQixtQkFBckIsY0FBOEMsV0FBVztDQUNyRCxPQUFjLFFBQVEsWUFBWTtDQUVsQztDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBRUEsZ0JBQTZCO0VBQ3pCLEtBQUssWUFBWSxLQUFLLE1BQU07RUFDNUIsS0FBSyxZQUFZLEtBQUssTUFBTTtFQUU1QixLQUFLLFlBQVksQ0FBQztFQUdsQixJQUFJLENBQUMsS0FBSywrQkFDTixLQUFLLG9CQUFvQixLQUFLLGFBQWE7T0FDeEM7R0FDSCxLQUFLLG9CQUFvQixFQUFFO0dBQzNCLEtBQUssYUFBYSxLQUFLLGFBQWE7RUFDeEM7RUFFQSxLQUFLLGFBQWEsS0FBSztFQUN2QixLQUFLLG9CQUFvQixPQUFPLFdBQVcsS0FBSyxJQUFJLENBQUM7RUFDckQsS0FBSyxNQUFNLEtBQUssSUFBSTtDQUN4QjtBQUNKIn0=