@jsprismarine/prismarine
Version:
Dedicated Minecraft Bedrock Edition server written in TypeScript
53 lines (52 loc) • 5.66 kB
JavaScript
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==