@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
28 lines (25 loc) • 3.08 kB
JavaScript
import { NetworkUtil } from '../NetworkUtil.es.js';
import Identifiers from '../Identifiers.es.js';
import DataPacket from './DataPacket.es.js';
class ResourcePackResponsePacket extends DataPacket {
static NetID = Identifiers.ResourcePackResponsePacket;
status;
packIds = [];
decodePayload() {
this.status = this.readByte();
let entryCount = this.readUnsignedShortLE();
while (entryCount-- > 0) {
this.packIds.push(NetworkUtil.readString(this));
}
}
encodePayload() {
this.writeByte(this.status);
this.writeUnsignedShortLE(0);
this.writeUnsignedShortLE(this.packIds.length);
this.packIds.forEach((id) => {
NetworkUtil.writeString(this, id);
});
}
}
export { ResourcePackResponsePacket as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VQYWNrUmVzcG9uc2VQYWNrZXQuZXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZXR3b3JrL3BhY2tldC9SZXNvdXJjZVBhY2tSZXNwb25zZVBhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZXR3b3JrVXRpbCB9IGZyb20gJy4uLy4uL25ldHdvcmsvTmV0d29ya1V0aWwnO1xuaW1wb3J0IElkZW50aWZpZXJzIGZyb20gJy4uL0lkZW50aWZpZXJzJztcbmltcG9ydCBEYXRhUGFja2V0IGZyb20gJy4vRGF0YVBhY2tldCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlc291cmNlUGFja1Jlc3BvbnNlUGFja2V0IGV4dGVuZHMgRGF0YVBhY2tldCB7XG4gICAgcHVibGljIHN0YXRpYyBOZXRJRCA9IElkZW50aWZpZXJzLlJlc291cmNlUGFja1Jlc3BvbnNlUGFja2V0O1xuXG4gICAgcHVibGljIHN0YXR1cyE6IG51bWJlcjtcbiAgICBwdWJsaWMgcGFja0lkczogc3RyaW5nW10gPSBbXTtcblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IHRoaXMucmVhZEJ5dGUoKTtcbiAgICAgICAgbGV0IGVudHJ5Q291bnQgPSB0aGlzLnJlYWRVbnNpZ25lZFNob3J0TEUoKTtcbiAgICAgICAgd2hpbGUgKGVudHJ5Q291bnQtLSA+IDApIHtcbiAgICAgICAgICAgIHRoaXMucGFja0lkcy5wdXNoKE5ldHdvcmtVdGlsLnJlYWRTdHJpbmcodGhpcykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGVuY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVCeXRlKHRoaXMuc3RhdHVzKTtcbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkU2hvcnRMRSgwKTtcblxuICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRTaG9ydExFKHRoaXMucGFja0lkcy5sZW5ndGgpO1xuICAgICAgICB0aGlzLnBhY2tJZHMuZm9yRWFjaCgoaWQpID0+IHtcbiAgICAgICAgICAgIE5ldHdvcmtVdGlsLndyaXRlU3RyaW5nKHRoaXMsIGlkKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFJQSxNQUFxQixtQ0FBbUMsVUFBVyxDQUFBO0FBQUEsRUFDL0QsT0FBYyxRQUFRLFdBQVksQ0FBQSwwQkFBQTtBQUFBLEVBRTNCLE1BQUE7QUFBQSxFQUNBLFVBQW9CLEVBQUM7QUFBQSxFQUVyQixhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLE1BQUEsR0FBUyxLQUFLLFFBQVMsRUFBQTtBQUM1QixJQUFJLElBQUEsVUFBQSxHQUFhLEtBQUssbUJBQW9CLEVBQUE7QUFDMUMsSUFBQSxPQUFPLGVBQWUsQ0FBRyxFQUFBO0FBQ3JCLE1BQUEsSUFBQSxDQUFLLE9BQVEsQ0FBQSxJQUFBLENBQUssV0FBWSxDQUFBLFVBQUEsQ0FBVyxJQUFJLENBQUMsQ0FBQTtBQUFBO0FBQ2xEO0FBQ0osRUFFTyxhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLFNBQUEsQ0FBVSxLQUFLLE1BQU0sQ0FBQTtBQUMxQixJQUFBLElBQUEsQ0FBSyxxQkFBcUIsQ0FBQyxDQUFBO0FBRTNCLElBQUssSUFBQSxDQUFBLG9CQUFBLENBQXFCLElBQUssQ0FBQSxPQUFBLENBQVEsTUFBTSxDQUFBO0FBQzdDLElBQUssSUFBQSxDQUFBLE9BQUEsQ0FBUSxPQUFRLENBQUEsQ0FBQyxFQUFPLEtBQUE7QUFDekIsTUFBWSxXQUFBLENBQUEsV0FBQSxDQUFZLE1BQU0sRUFBRSxDQUFBO0FBQUEsS0FDbkMsQ0FBQTtBQUFBO0FBRVQ7Ozs7In0=