geforkt von Mirrors/Paper
f835a91d15
Upstream has added the equivalent of our SentientNPC API, with exception to the EnderDragon. We've added Mob to the EnderDragon, and our SentientNPC API should behave the same. Vex#getOwner has been deprecated and a replacement Vex#getSummoner has been added using Mob. However, since 1.13 is not production ready, SentientNPC API is subject for removal in 1.13.1 since 1.13 API is not compatible with 1.12. Please move to the Mob interface ASAP. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: c5ab54d8 Expand GameRule API ab9a606c Improve entity hierarchy by adding Mob interface. CraftBukkit Changes:29e75648
Expand GameRule API50e6858b
Improve entity hierarchy by adding Mob interface.0e1d79b4
Correct error in previous patch
53 Zeilen
2.5 KiB
Diff
53 Zeilen
2.5 KiB
Diff
From 4778b7ea0c0515b083658bc3310e75c84c6887e0 Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
Date: Fri, 22 Jun 2018 10:38:31 -0500
|
|
Subject: [PATCH] Add config to disable ender dragon legacy check
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index ddb5ced79d..2701388043 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -414,4 +414,9 @@ public class PaperWorldConfig {
|
|
private void shieldBlockingDelay() {
|
|
shieldBlockingDelay = getInt("game-mechanics.shield-blocking-delay", 5);
|
|
}
|
|
+
|
|
+ public boolean scanForLegacyEnderDragon = true;
|
|
+ private void scanForLegacyEnderDragon() {
|
|
+ scanForLegacyEnderDragon = getBoolean("game-mechanics.scan-for-legacy-ender-dragon", true);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
index a20d54ee34..48bcda0f50 100644
|
|
--- a/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
+++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
@@ -29,9 +29,12 @@ public class EnderDragonBattle {
|
|
private int h;
|
|
private int i;
|
|
private int j;
|
|
+ private void setDragonKilled(boolean dragonKilled) { this.k = dragonKilled; } // Paper - OBFHELPER
|
|
private boolean k;
|
|
private boolean l;
|
|
private UUID m;
|
|
+ private void setScanForLegacyFight(boolean scanForLegacyFight) { this.n = scanForLegacyFight; } // Paper - OBFHELPER
|
|
+ private boolean scanForLegacyFight() { return this.n; } // Paper - OBFHELPER
|
|
private boolean n;
|
|
private BlockPosition o;
|
|
private EnumDragonRespawn p;
|
|
@@ -41,7 +44,10 @@ public class EnderDragonBattle {
|
|
public EnderDragonBattle(WorldServer worldserver, NBTTagCompound nbttagcompound) {
|
|
this.c = (BossBattleServer) (new BossBattleServer(new ChatMessage("entity.minecraft.ender_dragon", new Object[0]), BossBattle.BarColor.PINK, BossBattle.BarStyle.PROGRESS)).setPlayMusic(true).c(true);
|
|
this.e = Lists.newArrayList();
|
|
- this.n = true;
|
|
+ // Paper start
|
|
+ setScanForLegacyFight(worldserver.paperConfig.scanForLegacyEnderDragon);
|
|
+ if (!scanForLegacyFight()) setDragonKilled(true);
|
|
+ // Paper end
|
|
this.d = worldserver;
|
|
if (nbttagcompound.hasKeyOfType("DragonKilled", 99)) {
|
|
if (nbttagcompound.b("DragonUUID")) {
|
|
--
|
|
2.18.0
|
|
|