geforkt von Mirrors/Paper
459987d69f
improved the water code so that immunity wont trigger if the entity has the water pathfinder system active, so this improves support for all entities that know how to behave in water. Merged 2 EAR patches together, and removed an MCUtil method that doesnt have a purpose anymore
68 Zeilen
2.9 KiB
Diff
68 Zeilen
2.9 KiB
Diff
From 47714f32a19249b6a14932b999938ac838beb9a8 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 bd4cca26c7..85296e48db 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -433,4 +433,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 96e920ead8..e083ea483a 100644
|
|
--- a/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
+++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
@@ -27,16 +27,21 @@ 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 boolean n = true;
|
|
+ private boolean n = true; private void setScanForLegacyFight(boolean scanForLegacyFight) { this.n = scanForLegacyFight; } private boolean scanForLegacyFight() { return this.n; } // Paper - OBFHELPER
|
|
private BlockPosition o;
|
|
private EnumDragonRespawn p;
|
|
private int q;
|
|
private List<EntityEnderCrystal> r;
|
|
|
|
public EnderDragonBattle(WorldServer worldserver, NBTTagCompound nbttagcompound) {
|
|
+ // Paper start
|
|
+ setScanForLegacyFight(worldserver.paperConfig.scanForLegacyEnderDragon);
|
|
+ if (!scanForLegacyFight()) setDragonKilled(true);
|
|
+ // Paper end
|
|
this.d = worldserver;
|
|
if (nbttagcompound.hasKeyOfType("DragonKilled", 99)) {
|
|
if (nbttagcompound.b("DragonUUID")) {
|
|
@@ -286,14 +291,14 @@ public class EnderDragonBattle {
|
|
}
|
|
|
|
private void k() {
|
|
- HashSet hashset = Sets.newHashSet();
|
|
+ HashSet<EntityPlayer> hashset = Sets.newHashSet(); // Paper - decompile fix
|
|
|
|
for(EntityPlayer entityplayer : this.d.b(EntityPlayer.class, b)) {
|
|
this.c.addPlayer(entityplayer);
|
|
hashset.add(entityplayer);
|
|
}
|
|
|
|
- HashSet hashset1 = Sets.newHashSet(this.c.getPlayers());
|
|
+ HashSet<EntityPlayer> hashset1 = Sets.newHashSet(this.c.getPlayers()); // Paper - decompile fix
|
|
hashset1.removeAll(hashset);
|
|
|
|
for(EntityPlayer entityplayer1 : hashset1) {
|
|
--
|
|
2.19.0
|
|
|