Files
CatServer/patches/net/minecraft/world/end/DragonFightManager.java.patch

49 lines
1.6 KiB
Diff

--- ../src-base/minecraft/net/minecraft/world/end/DragonFightManager.java
+++ ../src-work/minecraft/net/minecraft/world/end/DragonFightManager.java
@@ -82,6 +82,7 @@
this.dragonKilled = compound.getBoolean("DragonKilled");
this.previouslyKilled = compound.getBoolean("PreviouslyKilled");
+ this.scanForLegacyFight = !compound.getBoolean("LegacyScanPerformed"); // Forge: fix MC-105080
if (compound.getBoolean("IsRespawning"))
{
@@ -128,6 +129,7 @@
nbttagcompound.setBoolean("DragonKilled", this.dragonKilled);
nbttagcompound.setBoolean("PreviouslyKilled", this.previouslyKilled);
+ nbttagcompound.setBoolean("LegacyScanPerformed", !this.scanForLegacyFight); // Forge: fix MC-105080
if (this.exitPortalLocation != null)
{
@@ -533,6 +535,14 @@
return;
}
+ // CatServer start
+ if (catserver.server.CatServer.getConfig().fixLessCrystalRespawnDragon) {
+ for (EntityEnderCrystal entityEnderCrystal : list) {
+ if (list1.contains(entityEnderCrystal)) return;
+ }
+ }
+ // CatServer end
+
list1.addAll(list);
}
@@ -582,4 +592,14 @@
}
}
}
+
+ public void addPlayer(EntityPlayerMP player)
+ {
+ this.bossInfo.addPlayer(player);
+ }
+
+ public void removePlayer(EntityPlayerMP player)
+ {
+ this.bossInfo.removePlayer(player);
+ }
}