From fa5b6152426b80eafe26fabee4a477bea89afd27 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 21 Sep 2018 11:34:00 -0400 Subject: [PATCH] Sync Player Position to Vehicles Player Positions could become desynced with their vehicle resulting in chunk conflicts about which chunk the entity should really be in. diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java index 452c279708..e7a2df685d 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -375,10 +375,13 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { } entity.setLocation(d3, d4, d5, f, f1); + Location curPos = getPlayer().getLocation(); // Paper + player.setLocation(d3, d4, d5, f, f1); // Paper boolean flag2 = worldserver.getCubes(entity, entity.getBoundingBox().shrink(0.0625D)); if (flag && (flag1 || !flag2)) { entity.setLocation(d0, d1, d2, f, f1); + player.setLocation(d0, d1, d2, f, f1); // Paper this.networkManager.sendPacket(new PacketPlayOutVehicleMove(entity)); return; } @@ -388,7 +391,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { // Spigot Start if ( !hasMoved ) { - Location curPos = player.getLocation(); + //Location curPos = player.getLocation(); // Paper - move up lastPosX = curPos.getX(); lastPosY = curPos.getY(); lastPosZ = curPos.getZ(); -- 2.19.0