UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

32 lines (27 loc) 3.74 kB
'use strict'; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } }); const entity_Attribute = require('../../entity/Attribute.cjs.cjs'); const network_packet_DataPacket = require('./DataPacket.cjs.cjs'); const network_Identifiers = require('../Identifiers.cjs.cjs'); class UpdateAttributesPacket extends network_packet_DataPacket.default { static NetID = network_Identifiers.default.UpdateAttributesPacket; runtimeEntityId; attributes = []; tick; encodePayload() { this.writeUnsignedVarLong(this.runtimeEntityId); this.writeUnsignedVarInt(this.attributes.length); for (const attribute of this.attributes) { attribute.networkSerialize(this); } this.writeUnsignedVarLong(this.tick); } decodePayload() { this.runtimeEntityId = this.readUnsignedVarLong(); const length = this.readUnsignedVarInt(); this.attributes = Array.from({ length }, () => entity_Attribute.Attribute.networkDeserialize(this)); this.tick = this.readUnsignedVarLong(); } } exports.default = UpdateAttributesPacket; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXBkYXRlQXR0cmlidXRlc1BhY2tldC5janMuY2pzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvVXBkYXRlQXR0cmlidXRlc1BhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi9lbnRpdHkvQXR0cmlidXRlJztcbmltcG9ydCBEYXRhUGFja2V0IGZyb20gJy4vRGF0YVBhY2tldCc7XG5pbXBvcnQgSWRlbnRpZmllcnMgZnJvbSAnLi4vSWRlbnRpZmllcnMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBVcGRhdGVBdHRyaWJ1dGVzUGFja2V0IGV4dGVuZHMgRGF0YVBhY2tldCB7XG4gICAgcHVibGljIHN0YXRpYyBOZXRJRCA9IElkZW50aWZpZXJzLlVwZGF0ZUF0dHJpYnV0ZXNQYWNrZXQ7XG5cbiAgICBwdWJsaWMgcnVudGltZUVudGl0eUlkITogYmlnaW50O1xuICAgIHB1YmxpYyBhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVbXSA9IFtdO1xuXG4gICAgcHVibGljIHRpY2shOiBiaWdpbnQ7XG5cbiAgICBwdWJsaWMgZW5jb2RlUGF5bG9hZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkVmFyTG9uZyh0aGlzLnJ1bnRpbWVFbnRpdHlJZCk7XG5cbiAgICAgICAgLy8gRW5jb2RlIGF0dHJpYnV0ZXNcbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkVmFySW50KHRoaXMuYXR0cmlidXRlcy5sZW5ndGgpO1xuICAgICAgICBmb3IgKGNvbnN0IGF0dHJpYnV0ZSBvZiB0aGlzLmF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgIGF0dHJpYnV0ZS5uZXR3b3JrU2VyaWFsaXplKHRoaXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53cml0ZVVuc2lnbmVkVmFyTG9uZyh0aGlzLnRpY2spO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJ1bnRpbWVFbnRpdHlJZCA9IHRoaXMucmVhZFVuc2lnbmVkVmFyTG9uZygpO1xuXG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMucmVhZFVuc2lnbmVkVmFySW50KCk7XG4gICAgICAgIHRoaXMuYXR0cmlidXRlcyA9IEFycmF5LmZyb20oeyBsZW5ndGggfSwgKCkgPT4gQXR0cmlidXRlLm5ldHdvcmtEZXNlcmlhbGl6ZSh0aGlzKSk7XG5cbiAgICAgICAgdGhpcy50aWNrID0gdGhpcy5yZWFkVW5zaWduZWRWYXJMb25nKCk7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbIkRhdGFQYWNrZXQiLCJJZGVudGlmaWVycyIsIkF0dHJpYnV0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFJQSxNQUFxQiwrQkFBK0JBLGlDQUFXLENBQUE7QUFBQSxFQUMzRCxPQUFjLFFBQVFDLDJCQUFZLENBQUEsc0JBQUE7QUFBQSxFQUUzQixlQUFBO0FBQUEsRUFDQSxhQUEwQixFQUFDO0FBQUEsRUFFM0IsSUFBQTtBQUFBLEVBRUEsYUFBc0IsR0FBQTtBQUN6QixJQUFLLElBQUEsQ0FBQSxvQkFBQSxDQUFxQixLQUFLLGVBQWUsQ0FBQTtBQUc5QyxJQUFLLElBQUEsQ0FBQSxtQkFBQSxDQUFvQixJQUFLLENBQUEsVUFBQSxDQUFXLE1BQU0sQ0FBQTtBQUMvQyxJQUFXLEtBQUEsTUFBQSxTQUFBLElBQWEsS0FBSyxVQUFZLEVBQUE7QUFDckMsTUFBQSxTQUFBLENBQVUsaUJBQWlCLElBQUksQ0FBQTtBQUFBO0FBR25DLElBQUssSUFBQSxDQUFBLG9CQUFBLENBQXFCLEtBQUssSUFBSSxDQUFBO0FBQUE7QUFDdkMsRUFFTyxhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLGVBQUEsR0FBa0IsS0FBSyxtQkFBb0IsRUFBQTtBQUVoRCxJQUFNLE1BQUEsTUFBQSxHQUFTLEtBQUssa0JBQW1CLEVBQUE7QUFDdkMsSUFBSyxJQUFBLENBQUEsVUFBQSxHQUFhLEtBQU0sQ0FBQSxJQUFBLENBQUssRUFBRSxNQUFBLElBQVUsTUFBTUMsMEJBQUEsQ0FBVSxrQkFBbUIsQ0FBQSxJQUFJLENBQUMsQ0FBQTtBQUVqRixJQUFLLElBQUEsQ0FBQSxJQUFBLEdBQU8sS0FBSyxtQkFBb0IsRUFBQTtBQUFBO0FBRTdDOzs7OyJ9