2018-09-01 06:56:57 +08:00
|
|
|
From 20e4fb71f59a552f2df178ab805c5c911a76d2e2 Mon Sep 17 00:00:00 2001
|
2016-04-22 14:54:34 +08:00
|
|
|
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
|
2018-09-01 06:56:57 +08:00
|
|
|
index 3628ddb4db..df2863ce1b 100644
|
2016-04-22 14:54:34 +08:00
|
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
2018-08-27 02:11:49 +08:00
|
|
|
@@ -247,4 +247,14 @@ public class PaperWorldConfig {
|
2016-05-28 09:35:28 +08:00
|
|
|
private void useVanillaScoreboardColoring() {
|
|
|
|
useVanillaScoreboardColoring = getBoolean("use-vanilla-world-scoreboard-name-coloring", false);
|
2016-04-22 14:54:34 +08:00
|
|
|
}
|
|
|
|
+
|
|
|
|
+ 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);
|
2017-03-25 11:18:58 +08:00
|
|
|
+ log("Frosted Ice: " + (this.frostedIceEnabled ? "enabled" : "disabled") + " / delay: min=" + this.frostedIceDelayMin + ", max=" + this.frostedIceDelayMax);
|
2016-04-22 14:54:34 +08:00
|
|
|
+ }
|
|
|
|
}
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/BlockIceFrost.java b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
2018-09-01 06:56:57 +08:00
|
|
|
index af6c744ad3..7bea86f52b 100644
|
2016-04-22 14:54:34 +08:00
|
|
|
--- a/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
|
|
+++ b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
2018-09-01 06:56:57 +08:00
|
|
|
@@ -11,19 +11,20 @@ public class BlockIceFrost extends BlockIce {
|
2016-04-22 14:54:34 +08:00
|
|
|
}
|
|
|
|
|
2018-07-16 23:34:55 +08:00
|
|
|
public void a(IBlockData iblockdata, World world, BlockPosition blockposition, Random random) {
|
2016-04-22 14:54:34 +08:00
|
|
|
+ if (!world.paperConfig.frostedIceEnabled) return; // Paper - add ability to disable frosted ice
|
2018-09-01 06:56:57 +08:00
|
|
|
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
|
2018-07-16 23:34:55 +08:00
|
|
|
}
|
|
|
|
}
|
2018-09-01 06:56:57 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
} 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
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-04-22 14:54:34 +08:00
|
|
|
--
|
2018-07-19 12:42:43 +08:00
|
|
|
2.18.0
|
2016-04-22 14:54:34 +08:00
|
|
|
|