PaperMC/Spigot-Server-Patches/0580-Reset-Ender-Crystals-on-Dragon-Spawn.patch

25 lines
1.1 KiB
Diff
Raw Normal View History

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 1 Jun 2016 23:29:17 -0400
Subject: [PATCH] Reset Ender Crystals on Dragon Spawn
Crystals can end up in a bad state in certain conditions which causes
an exception on the expected number of crystals going negative.
This ensures the crystals/pillars are in expected state when the dragon spawns.
See #3522
diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java
index 47182c5004f8023faeecec14a7fd090d40a14270..95ecf9dd511836cc2f70173f07234ef8822d6038 100644
--- a/src/main/java/net/minecraft/server/EnderDragonBattle.java
+++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java
@@ -403,6 +403,7 @@ public class EnderDragonBattle {
entityenderdragon.setPositionRotation(0.0D, 128.0D, 0.0D, this.world.random.nextFloat() * 360.0F, 0.0F);
this.world.addEntity(entityenderdragon);
this.dragonUUID = entityenderdragon.getUniqueID();
+ this.resetCrystals(); // Paper
return entityenderdragon;
}