@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
27 lines (24 loc) • 3.04 kB
JavaScript
import UUID from '../../utils/UUID.es.js';
import Identifiers from '../Identifiers.es.js';
import DataPacket from './DataPacket.es.js';
class EmoteListPacket extends DataPacket {
static NetID = Identifiers.EmoteListPacket;
runtimeId;
emoteIds = /* @__PURE__ */ new Set();
encodePayload() {
this.writeUnsignedVarInt(this.runtimeId);
this.writeUnsignedVarInt(this.emoteIds.size);
for (const emote of this.emoteIds.values()) {
emote.networkSerialize(this);
}
}
decodePayload() {
this.runtimeId = this.readUnsignedVarInt();
const emoteCount = this.readUnsignedVarInt();
for (let i = 0; i < emoteCount; i++) {
this.emoteIds.add(UUID.networkDeserialize(this));
}
}
}
export { EmoteListPacket as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW1vdGVMaXN0UGFja2V0LmVzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvRW1vdGVMaXN0UGFja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBVVUlEIGZyb20gJy4uLy4uL3V0aWxzL1VVSUQnO1xuaW1wb3J0IElkZW50aWZpZXJzIGZyb20gJy4uL0lkZW50aWZpZXJzJztcbmltcG9ydCBEYXRhUGFja2V0IGZyb20gJy4vRGF0YVBhY2tldCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEVtb3RlTGlzdFBhY2tldCBleHRlbmRzIERhdGFQYWNrZXQge1xuICAgIHB1YmxpYyBzdGF0aWMgTmV0SUQgPSBJZGVudGlmaWVycy5FbW90ZUxpc3RQYWNrZXQ7XG5cbiAgICBwdWJsaWMgcnVudGltZUlkITogbnVtYmVyO1xuICAgIHB1YmxpYyBlbW90ZUlkczogU2V0PFVVSUQ+ID0gbmV3IFNldCgpO1xuXG4gICAgcHVibGljIGVuY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVVbnNpZ25lZFZhckludCh0aGlzLnJ1bnRpbWVJZCk7XG4gICAgICAgIHRoaXMud3JpdGVVbnNpZ25lZFZhckludCh0aGlzLmVtb3RlSWRzLnNpemUpO1xuXG4gICAgICAgIGZvciAoY29uc3QgZW1vdGUgb2YgdGhpcy5lbW90ZUlkcy52YWx1ZXMoKSkge1xuICAgICAgICAgICAgZW1vdGUubmV0d29ya1NlcmlhbGl6ZSh0aGlzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJ1bnRpbWVJZCA9IHRoaXMucmVhZFVuc2lnbmVkVmFySW50KCk7XG4gICAgICAgIGNvbnN0IGVtb3RlQ291bnQgPSB0aGlzLnJlYWRVbnNpZ25lZFZhckludCgpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW1vdGVDb3VudDsgaSsrKSB7XG4gICAgICAgICAgICB0aGlzLmVtb3RlSWRzLmFkZChVVUlELm5ldHdvcmtEZXNlcmlhbGl6ZSh0aGlzKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUlBLE1BQXFCLHdCQUF3QixVQUFXLENBQUE7QUFBQSxFQUNwRCxPQUFjLFFBQVEsV0FBWSxDQUFBLGVBQUE7QUFBQSxFQUUzQixTQUFBO0FBQUEsRUFDQSxRQUFBLHVCQUEwQixHQUFJLEVBQUE7QUFBQSxFQUU5QixhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLG1CQUFBLENBQW9CLEtBQUssU0FBUyxDQUFBO0FBQ3ZDLElBQUssSUFBQSxDQUFBLG1CQUFBLENBQW9CLElBQUssQ0FBQSxRQUFBLENBQVMsSUFBSSxDQUFBO0FBRTNDLElBQUEsS0FBQSxNQUFXLEtBQVMsSUFBQSxJQUFBLENBQUssUUFBUyxDQUFBLE1BQUEsRUFBVSxFQUFBO0FBQ3hDLE1BQUEsS0FBQSxDQUFNLGlCQUFpQixJQUFJLENBQUE7QUFBQTtBQUMvQjtBQUNKLEVBRU8sYUFBc0IsR0FBQTtBQUN6QixJQUFLLElBQUEsQ0FBQSxTQUFBLEdBQVksS0FBSyxrQkFBbUIsRUFBQTtBQUN6QyxJQUFNLE1BQUEsVUFBQSxHQUFhLEtBQUssa0JBQW1CLEVBQUE7QUFFM0MsSUFBQSxLQUFBLElBQVMsQ0FBSSxHQUFBLENBQUEsRUFBRyxDQUFJLEdBQUEsVUFBQSxFQUFZLENBQUssRUFBQSxFQUFBO0FBQ2pDLE1BQUEsSUFBQSxDQUFLLFFBQVMsQ0FBQSxHQUFBLENBQUksSUFBSyxDQUFBLGtCQUFBLENBQW1CLElBQUksQ0FBQyxDQUFBO0FBQUE7QUFDbkQ7QUFFUjs7OzsifQ==