SPIGOT-1646: Capture the previous location earlier
Dieser Commit ist enthalten in:
Ursprung
23ad72b4c8
Commit
31caee5a94
@ -235,7 +235,7 @@
|
|||||||
this.minecraftServer.getPlayerList().d(this.player);
|
this.minecraftServer.getPlayerList().d(this.player);
|
||||||
this.player.checkMovement(this.player.locX - d0, this.player.locY - d1, this.player.locZ - d2);
|
this.player.checkMovement(this.player.locX - d0, this.player.locY - d1, this.player.locZ - d2);
|
||||||
this.D = d11 >= -0.03125D && !this.minecraftServer.getAllowFlight() && !worldserver.d(entity.getBoundingBox().g(0.0625D).a(0.0D, -0.55D, 0.0D));
|
this.D = d11 >= -0.03125D && !this.minecraftServer.getAllowFlight() && !worldserver.d(entity.getBoundingBox().g(0.0625D).a(0.0D, -0.55D, 0.0D));
|
||||||
@@ -273,12 +422,13 @@
|
@@ -273,13 +422,21 @@
|
||||||
this.A = this.e;
|
this.A = this.e;
|
||||||
this.a(this.teleportPos.x, this.teleportPos.y, this.teleportPos.z, this.player.yaw, this.player.pitch);
|
this.a(this.teleportPos.x, this.teleportPos.y, this.teleportPos.z, this.player.yaw, this.player.pitch);
|
||||||
}
|
}
|
||||||
@ -248,9 +248,17 @@
|
|||||||
this.minecraftServer.getPlayerList().d(this.player);
|
this.minecraftServer.getPlayerList().d(this.player);
|
||||||
+ this.allowedPlayerTicks = 20; // CraftBukkit
|
+ this.allowedPlayerTicks = 20; // CraftBukkit
|
||||||
} else {
|
} else {
|
||||||
|
+ // CraftBukkit - Make sure the move is valid but then reset it for plugins to modify
|
||||||
|
+ double prevX = player.locX;
|
||||||
|
+ double prevY = player.locY;
|
||||||
|
+ double prevZ = player.locZ;
|
||||||
|
+ float prevYaw = player.yaw;
|
||||||
|
+ float prevPitch = player.pitch;
|
||||||
|
+ // CraftBukkit end
|
||||||
double d0 = this.player.locX;
|
double d0 = this.player.locX;
|
||||||
double d1 = this.player.locY;
|
double d1 = this.player.locY;
|
||||||
@@ -298,15 +448,32 @@
|
double d2 = this.player.locZ;
|
||||||
|
@@ -298,15 +455,32 @@
|
||||||
++this.F;
|
++this.F;
|
||||||
int i = this.F - this.G;
|
int i = this.F - this.G;
|
||||||
|
|
||||||
@ -285,20 +293,6 @@
|
|||||||
PlayerConnection.LOGGER.warn(this.player.getName() + " moved too quickly! " + d7 + "," + d8 + "," + d9);
|
PlayerConnection.LOGGER.warn(this.player.getName() + " moved too quickly! " + d7 + "," + d8 + "," + d9);
|
||||||
this.a(this.player.locX, this.player.locY, this.player.locZ, this.player.yaw, this.player.pitch);
|
this.a(this.player.locX, this.player.locY, this.player.locZ, this.player.yaw, this.player.pitch);
|
||||||
return;
|
return;
|
||||||
@@ -341,6 +508,13 @@
|
|
||||||
PlayerConnection.LOGGER.warn(this.player.getName() + " moved wrongly!");
|
|
||||||
}
|
|
||||||
|
|
||||||
+ // CraftBukkit - Make sure the move is valid but then reset it for plugins to modify
|
|
||||||
+ double prevX = player.locX;
|
|
||||||
+ double prevY = player.locY;
|
|
||||||
+ double prevZ = player.locZ;
|
|
||||||
+ float prevYaw = player.yaw;
|
|
||||||
+ float prevPitch = player.pitch;
|
|
||||||
+ // CraftBukkit end
|
|
||||||
this.player.setLocation(d4, d5, d6, f, f1);
|
|
||||||
this.player.checkMovement(this.player.locX - d0, this.player.locY - d1, this.player.locZ - d2);
|
|
||||||
if (!this.player.noclip && !this.player.isSleeping()) {
|
|
||||||
@@ -352,6 +526,69 @@
|
@@ -352,6 +526,69 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren