Paper/Spigot-Server-Patches/0111-Re-track-players-that-dismount-from-other-players.patch
Zach Brown 4ed5ab7c79
Update upstream CB/S
--- work/CraftBukkit
Submodule work/CraftBukkit 297ff400..83af86db:
  > SPIGOT-5457: Downgrade 'Mismatch in destroy block pos' message to debug
  > SPIGOT-5481: PlayerBedLeaveEvent returns wrong bed location
  > SPIGOT-5482: Structure Block setUsageMode encounters NullpointerException
  > SPIGOT-5426: isSimilar for player heads fails
  > SPIGOT-5478: XP not dropping when a player dies

--- work/Spigot
Submodule work/Spigot 05bb8bcf..492a7792:
  > Rebuild patches
2019-12-26 22:18:27 -05:00

37 lines
1.4 KiB
Diff

From d23347c7874ac38162497b0c0ca077d37434e29a Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sun, 31 Jul 2016 16:33:03 -0500
Subject: [PATCH] Re-track players that dismount from other players
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 51fb7aece..764572163 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -966,6 +966,14 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
this.playerConnection.a(this.locX(), this.locY(), this.locZ(), this.yaw, this.pitch);
}
+ // Paper start - "Fixes" an issue in which the vehicle player would not be notified that the passenger dismounted
+ if (entity instanceof EntityPlayer) {
+ // TODO verify this solution
+ WorldServer worldServer = (WorldServer) entity.getWorld();
+ worldServer.getChunkProvider().playerChunkMap.removeEntity(this);
+ worldServer.getChunkProvider().playerChunkMap.addEntity(this);
+ }
+ // Paper end
}
@Override
@@ -981,7 +989,6 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
if (!this.isSpectator()) {
super.b(blockposition);
}
-
}
public void a(double d0, boolean flag) {
--
2.24.1