@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
29 lines (26 loc) • 3.61 kB
JavaScript
import { Vector3 } from '@jsprismarine/math';
import Identifiers from '../Identifiers.es.js';
import DataPacket from './DataPacket.es.js';
class ContainerOpenPacket extends DataPacket {
static NetID = Identifiers.ContainerOpenPacket;
windowId;
containerType;
containerPos;
containerEntityId;
encodePayload() {
this.writeByte(this.windowId);
this.writeByte(this.containerType);
this.writeVarInt(this.containerPos.getX());
this.writeVarInt(this.containerPos.getY());
this.writeVarInt(this.containerPos.getZ());
this.writeVarLong(this.containerEntityId);
}
decodePayload() {
this.windowId = this.readByte();
this.containerType = this.readByte();
this.containerPos = new Vector3(this.readVarInt(), this.readVarInt(), this.readVarInt());
this.containerEntityId = this.readVarLong();
}
}
export { ContainerOpenPacket as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGFpbmVyT3BlblBhY2tldC5lcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL25ldHdvcmsvcGFja2V0L0NvbnRhaW5lck9wZW5QYWNrZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmVjdG9yMyB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvbWF0aCc7XG5pbXBvcnQgSWRlbnRpZmllcnMgZnJvbSAnLi4vSWRlbnRpZmllcnMnO1xuaW1wb3J0IERhdGFQYWNrZXQgZnJvbSAnLi9EYXRhUGFja2V0JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29udGFpbmVyT3BlblBhY2tldCBleHRlbmRzIERhdGFQYWNrZXQge1xuICAgIHB1YmxpYyBzdGF0aWMgTmV0SUQgPSBJZGVudGlmaWVycy5Db250YWluZXJPcGVuUGFja2V0O1xuICAgIHB1YmxpYyB3aW5kb3dJZCE6IG51bWJlcjtcbiAgICBwdWJsaWMgY29udGFpbmVyVHlwZSE6IG51bWJlcjtcblxuICAgIHB1YmxpYyBjb250YWluZXJQb3MhOiBWZWN0b3IzO1xuICAgIHB1YmxpYyBjb250YWluZXJFbnRpdHlJZCE6IGJpZ2ludDtcblxuICAgIHB1YmxpYyBlbmNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlQnl0ZSh0aGlzLndpbmRvd0lkKTtcbiAgICAgICAgdGhpcy53cml0ZUJ5dGUodGhpcy5jb250YWluZXJUeXBlKTtcblxuICAgICAgICB0aGlzLndyaXRlVmFySW50KHRoaXMuY29udGFpbmVyUG9zLmdldFgoKSk7XG4gICAgICAgIHRoaXMud3JpdGVWYXJJbnQodGhpcy5jb250YWluZXJQb3MuZ2V0WSgpKTtcbiAgICAgICAgdGhpcy53cml0ZVZhckludCh0aGlzLmNvbnRhaW5lclBvcy5nZXRaKCkpO1xuXG4gICAgICAgIHRoaXMud3JpdGVWYXJMb25nKHRoaXMuY29udGFpbmVyRW50aXR5SWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndpbmRvd0lkID0gdGhpcy5yZWFkQnl0ZSgpO1xuICAgICAgICB0aGlzLmNvbnRhaW5lclR5cGUgPSB0aGlzLnJlYWRCeXRlKCk7XG5cbiAgICAgICAgdGhpcy5jb250YWluZXJQb3MgPSBuZXcgVmVjdG9yMyh0aGlzLnJlYWRWYXJJbnQoKSwgdGhpcy5yZWFkVmFySW50KCksIHRoaXMucmVhZFZhckludCgpKTtcblxuICAgICAgICB0aGlzLmNvbnRhaW5lckVudGl0eUlkID0gdGhpcy5yZWFkVmFyTG9uZygpO1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBSUEsTUFBcUIsNEJBQTRCLFVBQVcsQ0FBQTtBQUFBLEVBQ3hELE9BQWMsUUFBUSxXQUFZLENBQUEsbUJBQUE7QUFBQSxFQUMzQixRQUFBO0FBQUEsRUFDQSxhQUFBO0FBQUEsRUFFQSxZQUFBO0FBQUEsRUFDQSxpQkFBQTtBQUFBLEVBRUEsYUFBc0IsR0FBQTtBQUN6QixJQUFLLElBQUEsQ0FBQSxTQUFBLENBQVUsS0FBSyxRQUFRLENBQUE7QUFDNUIsSUFBSyxJQUFBLENBQUEsU0FBQSxDQUFVLEtBQUssYUFBYSxDQUFBO0FBRWpDLElBQUEsSUFBQSxDQUFLLFdBQVksQ0FBQSxJQUFBLENBQUssWUFBYSxDQUFBLElBQUEsRUFBTSxDQUFBO0FBQ3pDLElBQUEsSUFBQSxDQUFLLFdBQVksQ0FBQSxJQUFBLENBQUssWUFBYSxDQUFBLElBQUEsRUFBTSxDQUFBO0FBQ3pDLElBQUEsSUFBQSxDQUFLLFdBQVksQ0FBQSxJQUFBLENBQUssWUFBYSxDQUFBLElBQUEsRUFBTSxDQUFBO0FBRXpDLElBQUssSUFBQSxDQUFBLFlBQUEsQ0FBYSxLQUFLLGlCQUFpQixDQUFBO0FBQUE7QUFDNUMsRUFFTyxhQUFzQixHQUFBO0FBQ3pCLElBQUssSUFBQSxDQUFBLFFBQUEsR0FBVyxLQUFLLFFBQVMsRUFBQTtBQUM5QixJQUFLLElBQUEsQ0FBQSxhQUFBLEdBQWdCLEtBQUssUUFBUyxFQUFBO0FBRW5DLElBQUssSUFBQSxDQUFBLFlBQUEsR0FBZSxJQUFJLE9BQUEsQ0FBUSxJQUFLLENBQUEsVUFBQSxFQUFjLEVBQUEsSUFBQSxDQUFLLFVBQVcsRUFBQSxFQUFHLElBQUssQ0FBQSxVQUFBLEVBQVksQ0FBQTtBQUV2RixJQUFLLElBQUEsQ0FBQSxpQkFBQSxHQUFvQixLQUFLLFdBQVksRUFBQTtBQUFBO0FBRWxEOzs7OyJ9