UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

40 lines (39 loc) 3.68 kB
import Identifiers from "../Identifiers.es.js"; import DataPacket from "./DataPacket.es.js"; //#region src/network/packet/InteractPacket.ts var InteractAction = /* @__PURE__ */ function(InteractAction) { InteractAction[InteractAction["LeaveVehicle"] = 3] = "LeaveVehicle"; InteractAction[InteractAction["MouseOver"] = 4] = "MouseOver"; InteractAction[InteractAction["OpenNPC"] = 5] = "OpenNPC"; InteractAction[InteractAction["OpenInventory"] = 6] = "OpenInventory"; return InteractAction; }({}); var InteractPacket = class extends DataPacket { static NetID = Identifiers.InteractPacket; action; target; x; y; z; encodePayload() { this.writeByte(this.action); this.writeUnsignedVarLong(this.target); if (this.action === 4) { this.writeFloatLE(this.x); this.writeFloatLE(this.y); this.writeFloatLE(this.z); } } decodePayload() { this.action = this.readByte(); this.target = this.readUnsignedVarLong(); if (this.action === 4) { this.x = this.readFloatLE(); this.y = this.readFloatLE(); this.z = this.readFloatLE(); } } }; //#endregion export { InteractAction, InteractPacket as default }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJhY3RQYWNrZXQuZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL25ldHdvcmsvcGFja2V0L0ludGVyYWN0UGFja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJZGVudGlmaWVycyBmcm9tICcuLi9JZGVudGlmaWVycyc7XG5pbXBvcnQgRGF0YVBhY2tldCBmcm9tICcuL0RhdGFQYWNrZXQnO1xuXG5leHBvcnQgZW51bSBJbnRlcmFjdEFjdGlvbiB7XG4gICAgTGVhdmVWZWhpY2xlID0gMyxcbiAgICBNb3VzZU92ZXIgPSA0LFxuICAgIE9wZW5OUEMgPSA1LFxuICAgIE9wZW5JbnZlbnRvcnkgPSA2XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEludGVyYWN0UGFja2V0IGV4dGVuZHMgRGF0YVBhY2tldCB7XG4gICAgcHVibGljIHN0YXRpYyBOZXRJRCA9IElkZW50aWZpZXJzLkludGVyYWN0UGFja2V0O1xuXG4gICAgcHVibGljIGFjdGlvbiE6IG51bWJlcjtcbiAgICBwdWJsaWMgdGFyZ2V0ITogYmlnaW50O1xuXG4gICAgcHVibGljIHghOiBudW1iZXI7XG4gICAgcHVibGljIHkhOiBudW1iZXI7XG4gICAgcHVibGljIHohOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgZW5jb2RlUGF5bG9hZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0ZUJ5dGUodGhpcy5hY3Rpb24pO1xuICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRWYXJMb25nKHRoaXMudGFyZ2V0KTtcblxuICAgICAgICBpZiAodGhpcy5hY3Rpb24gPT09IEludGVyYWN0QWN0aW9uLk1vdXNlT3Zlcikge1xuICAgICAgICAgICAgdGhpcy53cml0ZUZsb2F0TEUodGhpcy54KTtcbiAgICAgICAgICAgIHRoaXMud3JpdGVGbG9hdExFKHRoaXMueSk7XG4gICAgICAgICAgICB0aGlzLndyaXRlRmxvYXRMRSh0aGlzLnopO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGRlY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aW9uID0gdGhpcy5yZWFkQnl0ZSgpO1xuICAgICAgICB0aGlzLnRhcmdldCA9IHRoaXMucmVhZFVuc2lnbmVkVmFyTG9uZygpO1xuXG4gICAgICAgIGlmICh0aGlzLmFjdGlvbiA9PT0gSW50ZXJhY3RBY3Rpb24uTW91c2VPdmVyKSB7XG4gICAgICAgICAgICB0aGlzLnggPSB0aGlzLnJlYWRGbG9hdExFKCk7XG4gICAgICAgICAgICB0aGlzLnkgPSB0aGlzLnJlYWRGbG9hdExFKCk7XG4gICAgICAgICAgICB0aGlzLnogPSB0aGlzLnJlYWRGbG9hdExFKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUdBLElBQVksaUJBQUwseUJBQUEsZ0JBQUE7Q0FDSCxlQUFBLGVBQUEsa0JBQUEsS0FBQTtDQUNBLGVBQUEsZUFBQSxlQUFBLEtBQUE7Q0FDQSxlQUFBLGVBQUEsYUFBQSxLQUFBO0NBQ0EsZUFBQSxlQUFBLG1CQUFBLEtBQUE7O0FBQ0osRUFBQSxDQUFBLENBQUE7QUFFQSxJQUFxQixpQkFBckIsY0FBNEMsV0FBVztDQUNuRCxPQUFjLFFBQVEsWUFBWTtDQUVsQztDQUNBO0NBRUE7Q0FDQTtDQUNBO0NBRUEsZ0JBQTZCO0VBQ3pCLEtBQUssVUFBVSxLQUFLLE1BQU07RUFDMUIsS0FBSyxxQkFBcUIsS0FBSyxNQUFNO0VBRXJDLElBQUksS0FBSyxXQUFBLEdBQXFDO0dBQzFDLEtBQUssYUFBYSxLQUFLLENBQUM7R0FDeEIsS0FBSyxhQUFhLEtBQUssQ0FBQztHQUN4QixLQUFLLGFBQWEsS0FBSyxDQUFDO0VBQzVCO0NBQ0o7Q0FFQSxnQkFBNkI7RUFDekIsS0FBSyxTQUFTLEtBQUssU0FBUztFQUM1QixLQUFLLFNBQVMsS0FBSyxvQkFBb0I7RUFFdkMsSUFBSSxLQUFLLFdBQUEsR0FBcUM7R0FDMUMsS0FBSyxJQUFJLEtBQUssWUFBWTtHQUMxQixLQUFLLElBQUksS0FBSyxZQUFZO0dBQzFCLEtBQUssSUFBSSxLQUFLLFlBQVk7RUFDOUI7Q0FDSjtBQUNKIn0=