geforkt von Mirrors/Paper
5cdfbda4e4
light queue is actually buggy, so re-enabling the config. however, if anyone is ok with the buggy behavior, made the max time lost due to light queue configurable. We want to get to making the ligth queue default if we can make it work perfectly. also applying neighbor optimizations to use the faster method for light checks.
68 Zeilen
2.9 KiB
Diff
68 Zeilen
2.9 KiB
Diff
From d7c4de3a1d800bef9dd9fdb6e69599bb48317825 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 c0eccc22b7..e5e5d2447d 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -425,4 +425,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
|
|
|