UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

53 lines (52 loc) 5.66 kB
import { NetworkUtil } from "../NetworkUtil.es.js"; import Identifiers from "../Identifiers.es.js"; import DataPacket from "./DataPacket.es.js"; import MovementType from "../type/MovementType.es.js"; //#region src/network/packet/MovePlayerPacket.ts var MovePlayerPacket = class extends DataPacket { static NetID = Identifiers.MovePlayerPacket; runtimeEntityId; position; pitch; yaw; headYaw; mode; onGround; ridingEntityRuntimeId; teleportCause; teleportItemId; tick; decodePayload() { this.runtimeEntityId = this.readUnsignedVarLong(); this.position = NetworkUtil.readVector3(this); this.pitch = this.readFloatLE(); this.yaw = this.readFloatLE(); this.headYaw = this.readFloatLE(); this.mode = this.readByte(); this.onGround = this.readBoolean(); this.ridingEntityRuntimeId = this.readUnsignedVarLong(); if (this.mode === MovementType.Teleport) { this.teleportCause = this.readIntLE(); this.teleportItemId = this.readIntLE(); } this.tick = this.readUnsignedVarLong(); } encodePayload() { this.writeUnsignedVarLong(this.runtimeEntityId); NetworkUtil.writeVector3(this, this.position); this.writeFloatLE(this.pitch); this.writeFloatLE(this.yaw); this.writeFloatLE(this.headYaw); this.writeByte(this.mode); this.writeBoolean(this.onGround); this.writeUnsignedVarLong(this.ridingEntityRuntimeId); if (this.mode === MovementType.Teleport) { this.writeIntLE(this.teleportCause); this.writeIntLE(this.teleportItemId); } this.writeUnsignedVarLong(this.tick); } }; //#endregion export { MovePlayerPacket as default }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW92ZVBsYXllclBhY2tldC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmV0d29yay9wYWNrZXQvTW92ZVBsYXllclBhY2tldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFZlY3RvcjMgfSBmcm9tICdAanNwcmlzbWFyaW5lL21hdGgnO1xuaW1wb3J0IElkZW50aWZpZXJzIGZyb20gJy4uL0lkZW50aWZpZXJzJztcbmltcG9ydCB7IE5ldHdvcmtVdGlsIH0gZnJvbSAnLi4vTmV0d29ya1V0aWwnO1xuaW1wb3J0IE1vdmVtZW50VHlwZSBmcm9tICcuLi90eXBlL01vdmVtZW50VHlwZSc7XG5pbXBvcnQgRGF0YVBhY2tldCBmcm9tICcuL0RhdGFQYWNrZXQnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNb3ZlUGxheWVyUGFja2V0IGV4dGVuZHMgRGF0YVBhY2tldCB7XG4gICAgcHVibGljIHN0YXRpYyBOZXRJRCA9IElkZW50aWZpZXJzLk1vdmVQbGF5ZXJQYWNrZXQ7XG5cbiAgICBwdWJsaWMgcnVudGltZUVudGl0eUlkITogYmlnaW50O1xuXG4gICAgcHVibGljIHBvc2l0aW9uITogVmVjdG9yMztcblxuICAgIHB1YmxpYyBwaXRjaCE6IG51bWJlcjtcbiAgICBwdWJsaWMgeWF3ITogbnVtYmVyO1xuICAgIHB1YmxpYyBoZWFkWWF3ITogbnVtYmVyO1xuXG4gICAgcHVibGljIG1vZGUhOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgb25Hcm91bmQhOiBib29sZWFuO1xuXG4gICAgcHVibGljIHJpZGluZ0VudGl0eVJ1bnRpbWVJZCE6IGJpZ2ludDtcblxuICAgIHB1YmxpYyB0ZWxlcG9ydENhdXNlITogbnVtYmVyO1xuICAgIHB1YmxpYyB0ZWxlcG9ydEl0ZW1JZCE6IG51bWJlcjtcblxuICAgIHB1YmxpYyB0aWNrITogYmlnaW50O1xuXG4gICAgcHVibGljIGRlY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVudGltZUVudGl0eUlkID0gdGhpcy5yZWFkVW5zaWduZWRWYXJMb25nKCk7XG5cbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9IE5ldHdvcmtVdGlsLnJlYWRWZWN0b3IzKHRoaXMpO1xuICAgICAgICB0aGlzLnBpdGNoID0gdGhpcy5yZWFkRmxvYXRMRSgpO1xuICAgICAgICB0aGlzLnlhdyA9IHRoaXMucmVhZEZsb2F0TEUoKTtcbiAgICAgICAgdGhpcy5oZWFkWWF3ID0gdGhpcy5yZWFkRmxvYXRMRSgpO1xuXG4gICAgICAgIHRoaXMubW9kZSA9IHRoaXMucmVhZEJ5dGUoKTtcbiAgICAgICAgdGhpcy5vbkdyb3VuZCA9IHRoaXMucmVhZEJvb2xlYW4oKTtcbiAgICAgICAgdGhpcy5yaWRpbmdFbnRpdHlSdW50aW1lSWQgPSB0aGlzLnJlYWRVbnNpZ25lZFZhckxvbmcoKTtcblxuICAgICAgICBpZiAodGhpcy5tb2RlID09PSBNb3ZlbWVudFR5cGUuVGVsZXBvcnQpIHtcbiAgICAgICAgICAgIHRoaXMudGVsZXBvcnRDYXVzZSA9IHRoaXMucmVhZEludExFKCk7XG4gICAgICAgICAgICB0aGlzLnRlbGVwb3J0SXRlbUlkID0gdGhpcy5yZWFkSW50TEUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudGljayA9IHRoaXMucmVhZFVuc2lnbmVkVmFyTG9uZygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBlbmNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRWYXJMb25nKHRoaXMucnVudGltZUVudGl0eUlkKTtcblxuICAgICAgICBOZXR3b3JrVXRpbC53cml0ZVZlY3RvcjModGhpcywgdGhpcy5wb3NpdGlvbik7XG4gICAgICAgIHRoaXMud3JpdGVGbG9hdExFKHRoaXMucGl0Y2gpO1xuICAgICAgICB0aGlzLndyaXRlRmxvYXRMRSh0aGlzLnlhdyk7XG4gICAgICAgIHRoaXMud3JpdGVGbG9hdExFKHRoaXMuaGVhZFlhdyk7XG5cbiAgICAgICAgdGhpcy53cml0ZUJ5dGUodGhpcy5tb2RlKTtcbiAgICAgICAgdGhpcy53cml0ZUJvb2xlYW4odGhpcy5vbkdyb3VuZCk7XG4gICAgICAgIHRoaXMud3JpdGVVbnNpZ25lZFZhckxvbmcodGhpcy5yaWRpbmdFbnRpdHlSdW50aW1lSWQpO1xuXG4gICAgICAgIGlmICh0aGlzLm1vZGUgPT09IE1vdmVtZW50VHlwZS5UZWxlcG9ydCkge1xuICAgICAgICAgICAgdGhpcy53cml0ZUludExFKHRoaXMudGVsZXBvcnRDYXVzZSk7XG4gICAgICAgICAgICB0aGlzLndyaXRlSW50TEUodGhpcy50ZWxlcG9ydEl0ZW1JZCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLndyaXRlVW5zaWduZWRWYXJMb25nKHRoaXMudGljayk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQU1BLElBQXFCLG1CQUFyQixjQUE4QyxXQUFXO0NBQ3JELE9BQWMsUUFBUSxZQUFZO0NBRWxDO0NBRUE7Q0FFQTtDQUNBO0NBQ0E7Q0FFQTtDQUVBO0NBRUE7Q0FFQTtDQUNBO0NBRUE7Q0FFQSxnQkFBNkI7RUFDekIsS0FBSyxrQkFBa0IsS0FBSyxvQkFBb0I7RUFFaEQsS0FBSyxXQUFXLFlBQVksWUFBWSxJQUFJO0VBQzVDLEtBQUssUUFBUSxLQUFLLFlBQVk7RUFDOUIsS0FBSyxNQUFNLEtBQUssWUFBWTtFQUM1QixLQUFLLFVBQVUsS0FBSyxZQUFZO0VBRWhDLEtBQUssT0FBTyxLQUFLLFNBQVM7RUFDMUIsS0FBSyxXQUFXLEtBQUssWUFBWTtFQUNqQyxLQUFLLHdCQUF3QixLQUFLLG9CQUFvQjtFQUV0RCxJQUFJLEtBQUssU0FBUyxhQUFhLFVBQVU7R0FDckMsS0FBSyxnQkFBZ0IsS0FBSyxVQUFVO0dBQ3BDLEtBQUssaUJBQWlCLEtBQUssVUFBVTtFQUN6QztFQUVBLEtBQUssT0FBTyxLQUFLLG9CQUFvQjtDQUN6QztDQUVBLGdCQUE2QjtFQUN6QixLQUFLLHFCQUFxQixLQUFLLGVBQWU7RUFFOUMsWUFBWSxhQUFhLE1BQU0sS0FBSyxRQUFRO0VBQzVDLEtBQUssYUFBYSxLQUFLLEtBQUs7RUFDNUIsS0FBSyxhQUFhLEtBQUssR0FBRztFQUMxQixLQUFLLGFBQWEsS0FBSyxPQUFPO0VBRTlCLEtBQUssVUFBVSxLQUFLLElBQUk7RUFDeEIsS0FBSyxhQUFhLEtBQUssUUFBUTtFQUMvQixLQUFLLHFCQUFxQixLQUFLLHFCQUFxQjtFQUVwRCxJQUFJLEtBQUssU0FBUyxhQUFhLFVBQVU7R0FDckMsS0FBSyxXQUFXLEtBQUssYUFBYTtHQUNsQyxLQUFLLFdBQVcsS0FBSyxjQUFjO0VBQ3ZDO0VBRUEsS0FBSyxxQkFBcUIsS0FBSyxJQUFJO0NBQ3ZDO0FBQ0oifQ==