From 6593b6a5cf432dcdc953f44ea85049a56a4b2eb3 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sat, 7 Oct 2023 17:42:04 -0400 Subject: [PATCH] Preserve rotation --- .../ServerGamePacketListenerImplMixin.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/forge_vehicle_packets/ServerGamePacketListenerImplMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/forge_vehicle_packets/ServerGamePacketListenerImplMixin.java index 8a716de8..3e842208 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/forge_vehicle_packets/ServerGamePacketListenerImplMixin.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/forge_vehicle_packets/ServerGamePacketListenerImplMixin.java @@ -18,7 +18,15 @@ public class ServerGamePacketListenerImplMixin { if(player == this.player) { // use positionRider Vec3 oldPos = this.player.position(); + yRot = this.player.yRot; + xRot = this.player.xRot; + float yHeadRot = this.player.getYHeadRot(); this.player.getRootVehicle().positionRider(this.player); + // keep old rotation + this.player.yRot = yRot; + this.player.xRot = xRot; + this.player.setYHeadRot(yHeadRot); + // save old position this.player.xo = oldPos.x; this.player.yo = oldPos.y; this.player.zo = oldPos.z;