testserver/Spigot-Server-Patches/0123-SPIGOT-1903-Update-Pla...

37 lines
1.5 KiB
Diff

From 92d4e34934d27a18a3b1c58a61d792b3cd940a12 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 10 Apr 2016 22:36:10 -0400
Subject: [PATCH] SPIGOT-1903: Update PlayerConnection on teleporting players
Otherwise the player will trigger a "moved too quickly" next movement packet
and rubber band.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 34c00eb..b38cb3f 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -293,6 +293,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 999f381..301c67d 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -204,7 +204,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.2.windows.1