From 3f994a958bdda226403b9927b3f363e3373f8405 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 22 Oct 2016 15:32:31 -0500 Subject: [PATCH] SPIGOT-1903: Use alternate fix Prevents rubber banding and moved too quickly issues Removes Spigot's fix in favor of the one previously in Paper See GH-453 for rationale diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java index 4039317..4446719 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -307,6 +307,7 @@ public abstract class Entity implements ICommandListener { this.locX = d0; this.locY = d1; this.locZ = d2; + if (this instanceof EntityPlayer && ((EntityPlayer) this).playerConnection != null) ((EntityPlayer) this).playerConnection.captureCurrentPosition(); // Paper float f = this.width / 2.0F; float f1 = this.length; diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java index 59f7020..870a4b5 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -135,9 +135,12 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { // CraftBukkit end public void E_() { + // Paper start - Unreverse the order of location update, GH-453 + this.d(); // CraftBukkit start - SPIGOT-1903: reverse order of location update this.player.k_(); - this.d(); + //this.d(); + // Paper end // CraftBukkit end this.player.setLocation(this.l, this.m, this.n, this.player.yaw, this.player.pitch); ++this.e; @@ -206,7 +209,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { } - private void d() { + public void captureCurrentPosition() { d(); } private void d() { // Paper - OBFHELPER this.l = this.player.locX; this.m = this.player.locY; this.n = this.player.locZ; -- 2.9.3