From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com> Date: Sat, 6 Aug 2022 18:10:14 -0400 Subject: [PATCH] Set position before player sending on dimension change This causes a moment where the player entity is sent with the previous location, and the teleport packet which is sent shortly after is meant to correct that. Fixed in 1.19.4 (notice how addDuringPortalTeleport is now called AFTER movement is done now) diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java index b30972c3ab19795e26589cd0cdd54c43414fe368..c5dc769d13fbc2a88a731d42669d0906ee306e4b 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1176,6 +1176,7 @@ public class ServerPlayer extends Player { // CraftBukkit end this.setLevel(worldserver); + this.moveTo(exit.getX(), exit.getY(), exit.getZ(), exit.getYaw(), exit.getPitch()); // Paper - Set the location before this.connection.teleport(exit); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); worldserver.addDuringPortalTeleport(this);