89d51d5f29
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable. It should be noted that this decision does not promise all future exploits will be configurable.
40 Zeilen
2.4 KiB
Diff
40 Zeilen
2.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sat, 12 Nov 2022 10:08:58 -0800
|
|
Subject: [PATCH] ensure reset EnderDragon boss event name
|
|
|
|
Fix MC-257487
|
|
|
|
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 50071bec6825ec2b34662de14128070510d16afb..8737501e14792de13adf95da24fa6177bfb77946 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
|
|
@@ -73,6 +73,7 @@ public class EndDragonFight {
|
|
private static final int GATEWAY_DISTANCE = 96;
|
|
public static final int DRAGON_SPAWN_Y = 128;
|
|
private final Predicate<Entity> validPlayer;
|
|
+ private static final Component DEFAULT_BOSS_EVENT_NAME = Component.translatable("entity.minecraft.ender_dragon"); // Paper - ensure reset EnderDragon boss event name
|
|
public final ServerBossEvent dragonEvent;
|
|
public final ServerLevel level;
|
|
private final BlockPos origin;
|
|
@@ -101,7 +102,7 @@ public class EndDragonFight {
|
|
}
|
|
|
|
public EndDragonFight(ServerLevel world, long gatewaysSeed, EndDragonFight.Data data, BlockPos origin) {
|
|
- this.dragonEvent = (ServerBossEvent) (new ServerBossEvent(Component.translatable("entity.minecraft.ender_dragon"), BossEvent.BossBarColor.PINK, BossEvent.BossBarOverlay.PROGRESS)).setPlayBossMusic(true).setCreateWorldFog(true);
|
|
+ this.dragonEvent = (ServerBossEvent) (new ServerBossEvent(DEFAULT_BOSS_EVENT_NAME, BossEvent.BossBarColor.PINK, BossEvent.BossBarOverlay.PROGRESS)).setPlayBossMusic(true).setCreateWorldFog(true); // Paper - ensure reset EnderDragon boss event name
|
|
this.gateways = new ObjectArrayList();
|
|
this.ticksSinceLastPlayerScan = 21;
|
|
this.skipArenaLoadedCheck = false;
|
|
@@ -503,6 +504,10 @@ public class EndDragonFight {
|
|
this.ticksSinceDragonSeen = 0;
|
|
if (dragon.hasCustomName()) {
|
|
this.dragonEvent.setName(dragon.getDisplayName());
|
|
+ // Paper start - ensure reset EnderDragon boss event name
|
|
+ } else {
|
|
+ this.dragonEvent.setName(DEFAULT_BOSS_EVENT_NAME);
|
|
+ // Paper end - ensure reset EnderDragon boss event name
|
|
}
|
|
}
|
|
|