Fix scanForLegacyEnderDragon world config (#11262)

This commit is contained in:
Lulu13022002 2024-08-16 21:45:07 +02:00
parent f2ebf08911
commit 42dae8d83e

View file

@ -9,13 +9,15 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
+++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
@@ -0,0 +0,0 @@ public class EndDragonFight {
this.ticksSinceLastPlayerScan = 21;
this.skipArenaLoadedCheck = false;
this.needsStateScanning = true;
if (data.isRespawning) {
this.respawnStage = DragonRespawnAnimation.START;
}
+ // Paper start - Add config to disable ender dragon legacy check
+ this.needsStateScanning = world.paperConfig().entities.spawning.scanForLegacyEnderDragon;
+ if (!this.needsStateScanning) this.dragonKilled = true;
+ if (data == EndDragonFight.Data.DEFAULT && !world.paperConfig().entities.spawning.scanForLegacyEnderDragon) {
+ this.needsStateScanning = false;
+ this.dragonKilled = true;
+ }
+ // Paper end - Add config to disable ender dragon legacy check
this.level = world;
this.origin = origin;
this.validPlayer = EntitySelector.ENTITY_STILL_ALIVE.and(EntitySelector.withinDistance((double) origin.getX(), (double) (128 + origin.getY()), (double) origin.getZ(), 192.0D));
this.portalLocation = (BlockPos) data.exitPortalLocation.orElse(null); // CraftBukkit - decompile error
this.gateways.addAll((Collection) data.gateways.orElseGet(() -> {