From f4dc98074c385eff8c6f19385ae6b86bea062b1c Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 26 Apr 2019 17:12:45 +1000 Subject: [PATCH] SPIGOT-4767: Fire from lava persists after respawn --- nms-patches/EntityPlayer.patch | 36 +++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/nms-patches/EntityPlayer.patch b/nms-patches/EntityPlayer.patch index 9bdcf2f0e2..9a6ad5a94d 100644 --- a/nms-patches/EntityPlayer.patch +++ b/nms-patches/EntityPlayer.patch @@ -568,24 +568,25 @@ } @Override -@@ -941,7 +1218,16 @@ +@@ -941,8 +1218,17 @@ public void triggerHealthUpdate() { this.lastHealthSent = -1.0E8F; + this.lastSentExp = -1; // CraftBukkit - Added to reset -+ } -+ + } + + // CraftBukkit start - Support multi-line messages + public void sendMessage(IChatBaseComponent[] ichatbasecomponent) { + for (IChatBaseComponent component : ichatbasecomponent) { + this.sendMessage(component); + } - } ++ } + // CraftBukkit end - ++ @Override public void a(IChatBaseComponent ichatbasecomponent, boolean flag) { -@@ -996,7 +1282,7 @@ + this.playerConnection.sendPacket(new PacketPlayOutChat(ichatbasecomponent, flag ? ChatMessageType.GAME_INFO : ChatMessageType.CHAT)); +@@ -996,12 +1282,14 @@ this.lastSentExp = -1; this.lastHealthSent = -1.0F; this.lastFoodSent = -1; @@ -594,7 +595,14 @@ this.removeQueue.addAll(entityplayer.removeQueue); this.cp = entityplayer.cp; this.cu = entityplayer.cu; -@@ -1063,6 +1349,18 @@ + this.setShoulderEntityLeft(entityplayer.getShoulderEntityLeft()); + this.setShoulderEntityRight(entityplayer.getShoulderEntityRight()); ++ ++ this.S = false; // SPIGOT-4767 + } + + @Override +@@ -1063,6 +1351,18 @@ @Override public void a(EnumGamemode enumgamemode) { @@ -613,7 +621,7 @@ this.playerInteractManager.setGameMode(enumgamemode); this.playerConnection.sendPacket(new PacketPlayOutGameStateChange(3, (float) enumgamemode.getId())); if (enumgamemode == EnumGamemode.SPECTATOR) { -@@ -1113,6 +1411,17 @@ +@@ -1113,6 +1413,17 @@ } public void a(PacketPlayInSettings packetplayinsettings) { @@ -631,7 +639,7 @@ this.locale = packetplayinsettings.b(); this.ck = packetplayinsettings.d(); this.cl = packetplayinsettings.e(); -@@ -1149,13 +1458,13 @@ +@@ -1149,13 +1460,13 @@ if (entity instanceof EntityHuman) { this.playerConnection.sendPacket(new PacketPlayOutEntityDestroy(new int[] { entity.getId()})); } else { @@ -647,7 +655,7 @@ } @Override -@@ -1179,7 +1488,7 @@ +@@ -1179,7 +1490,7 @@ this.spectatedEntity = (Entity) (entity == null ? this : entity); if (entity1 != this.spectatedEntity) { this.playerConnection.sendPacket(new PacketPlayOutCamera(this.spectatedEntity)); @@ -656,7 +664,7 @@ } } -@@ -1208,7 +1517,7 @@ +@@ -1208,7 +1519,7 @@ @Nullable public IChatBaseComponent getPlayerListName() { @@ -665,7 +673,7 @@ } @Override -@@ -1226,21 +1535,33 @@ +@@ -1226,21 +1537,33 @@ } public void J() { @@ -699,7 +707,7 @@ if (worldserver == this.world) { this.playerConnection.a(d0, d1, d2, f, f1); } else { -@@ -1263,6 +1584,9 @@ +@@ -1263,6 +1586,9 @@ this.server.getPlayerList().a(this, worldserver); this.server.getPlayerList().updateClient(this); } @@ -709,7 +717,7 @@ } -@@ -1314,4 +1638,144 @@ +@@ -1314,4 +1640,144 @@ return entityitem; } }