PaperSpigot-Parent/CraftBukkit-Patches/0060-Don-t-Special-Case-X-Move-Value.patch

40 lines
1.7 KiB
Diff

From 0ff1de8b8b24b90e91471202ae5a9e129f672ceb Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 6 Oct 2013 17:36:28 +1100
Subject: [PATCH] Don't Special Case X Move Value
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 2e04e71..5c86849 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -102,6 +102,7 @@ public class PlayerConnection implements PacketPlayInListener {
private float lastPitch = Float.MAX_VALUE;
private float lastYaw = Float.MAX_VALUE;
private boolean justTeleported = false;
+ private boolean hasMoved; // Spigot
// For the PacketPlayOutBlockPlace hack :(
Long lastPacket;
@@ -218,7 +219,7 @@ public class PlayerConnection implements PacketPlayInListener {
this.lastPitch = to.getPitch();
// Skip the first time we do this
- if (from.getX() != Double.MAX_VALUE) {
+ if (hasMoved) { // Spigot - Better Check!
PlayerMoveEvent event = new PlayerMoveEvent(player, from, to);
this.server.getPluginManager().callEvent(event);
@@ -242,7 +243,7 @@ public class PlayerConnection implements PacketPlayInListener {
this.justTeleported = false;
return;
}
- }
+ } else { hasMoved = true; } // Spigot - Better Check!
}
if (Double.isNaN(packetplayinflying.x) || Double.isNaN(packetplayinflying.y) || Double.isNaN(packetplayinflying.z) || Double.isNaN(packetplayinflying.stance)) {
--
1.8.3.2