mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-06 03:48:05 +02:00
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.
56 lines
3.2 KiB
Diff
56 lines
3.2 KiB
Diff
From 3f001c5aae3187744325aec06a94e979bfcd335a Mon Sep 17 00:00:00 2001
|
|
From: kashike <kashike@vq.lc>
|
|
Date: Thu, 21 Apr 2016 23:51:55 -0700
|
|
Subject: [PATCH] Add ability to configure frosted_ice properties
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index cf523a3e48..4f921dbd38 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -255,4 +255,14 @@ public class PaperWorldConfig {
|
|
private void useVanillaScoreboardColoring() {
|
|
useVanillaScoreboardColoring = getBoolean("use-vanilla-world-scoreboard-name-coloring", false);
|
|
}
|
|
+
|
|
+ public boolean frostedIceEnabled = true;
|
|
+ public int frostedIceDelayMin = 20;
|
|
+ public int frostedIceDelayMax = 40;
|
|
+ private void frostedIce() {
|
|
+ this.frostedIceEnabled = this.getBoolean("frosted-ice.enabled", this.frostedIceEnabled);
|
|
+ this.frostedIceDelayMin = this.getInt("frosted-ice.delay.min", this.frostedIceDelayMin);
|
|
+ this.frostedIceDelayMax = this.getInt("frosted-ice.delay.max", this.frostedIceDelayMax);
|
|
+ log("Frosted Ice: " + (this.frostedIceEnabled ? "enabled" : "disabled") + " / delay: min=" + this.frostedIceDelayMin + ", max=" + this.frostedIceDelayMax);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/BlockIceFrost.java b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
index af6c744ad3..7bea86f52b 100644
|
|
--- a/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
+++ b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
@@ -11,19 +11,20 @@ public class BlockIceFrost extends BlockIce {
|
|
}
|
|
|
|
public void a(IBlockData iblockdata, World world, BlockPosition blockposition, Random random) {
|
|
+ if (!world.paperConfig.frostedIceEnabled) return; // Paper - add ability to disable frosted ice
|
|
if ((random.nextInt(3) == 0 || this.a(world, blockposition, 4)) && world.getLightLevel(blockposition) > 11 - iblockdata.get(a) - iblockdata.b(world, blockposition) && this.c(iblockdata, world, blockposition)) {
|
|
try (BlockPosition.b blockposition$b = BlockPosition.b.r()) {
|
|
for(EnumDirection enumdirection : EnumDirection.values()) {
|
|
blockposition$b.j(blockposition).d(enumdirection);
|
|
IBlockData iblockdata1 = world.getType(blockposition$b);
|
|
if (iblockdata1.getBlock() == this && !this.c(iblockdata1, world, blockposition$b)) {
|
|
- world.J().a(blockposition$b, this, MathHelper.nextInt(random, 20, 40));
|
|
+ world.J().a(blockposition$b, this, MathHelper.nextInt(random, world.paperConfig.frostedIceDelayMin, world.paperConfig.frostedIceDelayMax)); // Paper - use configurable min/max delay
|
|
}
|
|
}
|
|
}
|
|
|
|
} else {
|
|
- world.J().a(blockposition, this, MathHelper.nextInt(random, 20, 40));
|
|
+ world.J().a(blockposition, this, MathHelper.nextInt(random, world.paperConfig.frostedIceDelayMin, world.paperConfig.frostedIceDelayMax)); // Paper - use configurable min/max delay
|
|
}
|
|
}
|
|
|
|
--
|
|
2.19.0
|
|
|