From 0d8594ae94f73b87a647ea39ffd54858f33a69d3 Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sat, 20 Jun 2020 15:04:50 -0400 Subject: [PATCH] Fix enderdragon exp dupe Properly track death stage when unloading/loading in the dragon --- .../0545-Fix-enderdragon-exp-dupe.patch | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Spigot-Server-Patches/0545-Fix-enderdragon-exp-dupe.patch diff --git a/Spigot-Server-Patches/0545-Fix-enderdragon-exp-dupe.patch b/Spigot-Server-Patches/0545-Fix-enderdragon-exp-dupe.patch new file mode 100644 index 000000000..f37907b17 --- /dev/null +++ b/Spigot-Server-Patches/0545-Fix-enderdragon-exp-dupe.patch @@ -0,0 +1,37 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Spottedleaf +Date: Fri, 12 Jun 2020 22:25:11 -0700 +Subject: [PATCH] Fix enderdragon exp dupe + +Properly track death stage when unloading/loading in the +dragon + +diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java +index aecdaacfc7da560759bc513680d76f55820d5046..7daebfdab5c6e258d3e426643c0dbd374774ff5d 100644 +--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java ++++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java +@@ -33,7 +33,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { + public float bx; + public float by; + public boolean bz; +- public int bA; ++ public int bA; public final int getDeathTicks() { return this.bA; } public final void setDeathTicks(final int value) { this.bA = value; } // Paper + public float bB; + @Nullable + public EntityEnderCrystal currentEnderCrystal; +@@ -833,6 +833,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { + public void b(NBTTagCompound nbttagcompound) { + super.b(nbttagcompound); + nbttagcompound.setInt("DragonPhase", this.bO.a().getControllerPhase().b()); ++ nbttagcompound.setInt("Paper.DeathTick", this.getDeathTicks()); // Paper + } + + @Override +@@ -841,6 +842,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { + if (nbttagcompound.hasKey("DragonPhase")) { + this.bO.setControllerPhase(DragonControllerPhase.getById(nbttagcompound.getInt("DragonPhase"))); + } ++ this.setDeathTicks(nbttagcompound.getInt("Paper.DeathTick")); // Paper + + } +