@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
33 lines (28 loc) • 3.42 kB
JavaScript
'use strict';
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const network_Identifiers = require('../Identifiers.cjs.cjs');
const network_packet_DataPacket = require('./DataPacket.cjs.cjs');
class LevelChunkPacket extends network_packet_DataPacket.default {
static NetID = network_Identifiers.default.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);
}
}
exports.default = LevelChunkPacket;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGV2ZWxDaHVua1BhY2tldC5janMuY2pzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvTGV2ZWxDaHVua1BhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSWRlbnRpZmllcnMgZnJvbSAnLi4vSWRlbnRpZmllcnMnO1xuaW1wb3J0IERhdGFQYWNrZXQgZnJvbSAnLi9EYXRhUGFja2V0JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGV2ZWxDaHVua1BhY2tldCBleHRlbmRzIERhdGFQYWNrZXQge1xuICAgIHB1YmxpYyBzdGF0aWMgTmV0SUQgPSBJZGVudGlmaWVycy5MZXZlbENodW5rUGFja2V0O1xuXG4gICAgcHVibGljIGNodW5rWCE6IG51bWJlcjtcbiAgICBwdWJsaWMgY2h1bmtaITogbnVtYmVyO1xuICAgIHB1YmxpYyBzdWJDaHVua0NvdW50ITogbnVtYmVyO1xuICAgIHB1YmxpYyBjbGllbnRTdWJDaHVua1JlcXVlc3RzRW5hYmxlZCE6IGJvb2xlYW47XG4gICAgcHVibGljIGRhdGE6IGFueTtcblxuICAgIHB1YmxpYyBlbmNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVmFySW50KHRoaXMuY2h1bmtYKTtcbiAgICAgICAgdGhpcy53cml0ZVZhckludCh0aGlzLmNodW5rWik7XG5cbiAgICAgICAgdGhpcy53cml0ZVZhckludCgwKTsgLy8gRGltZW5zaW9uSURcblxuICAgICAgICAvLyBUT0RPOiBSRSB0aGlzIHBhcnRcbiAgICAgICAgaWYgKCF0aGlzLmNsaWVudFN1YkNodW5rUmVxdWVzdHNFbmFibGVkKSB7XG4gICAgICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRWYXJJbnQodGhpcy5zdWJDaHVua0NvdW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMud3JpdGVVbnNpZ25lZFZhckludCgtMik7XG4gICAgICAgICAgICB0aGlzLndyaXRlU2hvcnRMRSh0aGlzLnN1YkNodW5rQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53cml0ZUJvb2xlYW4oZmFsc2UpOyAvLyBDYWNoZWRcbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkVmFySW50KEJ1ZmZlci5ieXRlTGVuZ3RoKHRoaXMuZGF0YSkpO1xuICAgICAgICB0aGlzLndyaXRlKHRoaXMuZGF0YSk7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbIkRhdGFQYWNrZXQiLCJJZGVudGlmaWVycyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdBLE1BQXFCLHlCQUF5QkEsaUNBQVcsQ0FBQTtBQUFBLEVBQ3JELE9BQWMsUUFBUUMsMkJBQVksQ0FBQSxnQkFBQTtBQUFBLEVBRTNCLE1BQUE7QUFBQSxFQUNBLE1BQUE7QUFBQSxFQUNBLGFBQUE7QUFBQSxFQUNBLDZCQUFBO0FBQUEsRUFDQSxJQUFBO0FBQUEsRUFFQSxhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLFdBQUEsQ0FBWSxLQUFLLE1BQU0sQ0FBQTtBQUM1QixJQUFLLElBQUEsQ0FBQSxXQUFBLENBQVksS0FBSyxNQUFNLENBQUE7QUFFNUIsSUFBQSxJQUFBLENBQUssWUFBWSxDQUFDLENBQUE7QUFHbEIsSUFBSSxJQUFBLENBQUMsS0FBSyw2QkFBK0IsRUFBQTtBQUNyQyxNQUFLLElBQUEsQ0FBQSxtQkFBQSxDQUFvQixLQUFLLGFBQWEsQ0FBQTtBQUFBLEtBQ3hDLE1BQUE7QUFDSCxNQUFBLElBQUEsQ0FBSyxvQkFBb0IsQ0FBRSxDQUFBLENBQUE7QUFDM0IsTUFBSyxJQUFBLENBQUEsWUFBQSxDQUFhLEtBQUssYUFBYSxDQUFBO0FBQUE7QUFHeEMsSUFBQSxJQUFBLENBQUssYUFBYSxLQUFLLENBQUE7QUFDdkIsSUFBQSxJQUFBLENBQUssbUJBQW9CLENBQUEsTUFBQSxDQUFPLFVBQVcsQ0FBQSxJQUFBLENBQUssSUFBSSxDQUFDLENBQUE7QUFDckQsSUFBSyxJQUFBLENBQUEsS0FBQSxDQUFNLEtBQUssSUFBSSxDQUFBO0FBQUE7QUFFNUI7Ozs7In0=