aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0439-Reset-Ender-Crystals-on-Dragon-Spawn.patch
blob: 150b197347c194a018da746c502e7d343e534e04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
index d6b6c83a6d660107956a28c16fde2260583722aa..43f9635cfb3b1f57774ec0e33e0909d08a01db91 100644
--- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
+++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
@@ -472,6 +472,7 @@ public class EndDragonFight {
             entityenderdragon.moveTo((double) this.origin.getX(), (double) (128 + this.origin.getY()), (double) this.origin.getZ(), this.level.random.nextFloat() * 360.0F, 0.0F);
             this.level.addFreshEntity(entityenderdragon);
             this.dragonUUID = entityenderdragon.getUUID();
+            this.resetSpikeCrystals(); // Paper - Reset ender crystals on dragon spawn
         }
 
         return entityenderdragon;