mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-07 12:28:13 +02:00
37 lines
1.8 KiB
Diff
37 lines
1.8 KiB
Diff
From 6dc4b9f917be307b6b5473fcd4b59fe82555a7fa Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 3 Apr 2016 16:28:17 -0400
|
|
Subject: [PATCH] Configurable Grass Spread Tick Rate
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index 6eb0a2d..bc3515c 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -296,4 +296,10 @@ public class PaperWorldConfig {
|
|
private void useInhabitedTime() {
|
|
useInhabitedTime = getBoolean("use-chunk-inhabited-timer", true);
|
|
}
|
|
+
|
|
+ public int grassUpdateRate = 1;
|
|
+ private void grassUpdateRate() {
|
|
+ grassUpdateRate = Math.max(0, getInt("grass-spread-tick-rate", grassUpdateRate));
|
|
+ log("Grass Spread Tick Rate: " + grassUpdateRate);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/BlockGrass.java b/src/main/java/net/minecraft/server/BlockGrass.java
|
|
index 21e722d..e41f2b2 100644
|
|
--- a/src/main/java/net/minecraft/server/BlockGrass.java
|
|
+++ b/src/main/java/net/minecraft/server/BlockGrass.java
|
|
@@ -29,6 +29,7 @@ public class BlockGrass extends Block implements IBlockFragilePlantElement {
|
|
}
|
|
|
|
public void b(World world, BlockPosition blockposition, IBlockData iblockdata, Random random) {
|
|
+ if (world.paperConfig.grassUpdateRate != 1 && (world.paperConfig.grassUpdateRate < 1 || (MinecraftServer.currentTick + blockposition.hashCode()) % world.paperConfig.grassUpdateRate != 0)) { return; } // Paper
|
|
if (!world.isClientSide) {
|
|
int lightLevel = -1; // Paper
|
|
if (world.getType(blockposition.up()).c() > 2 && (lightLevel = world.getLightLevel(blockposition.up())) < 4) { // Paper - move light check to end to avoid unneeded light lookups
|
|
--
|
|
2.10.0.windows.1
|
|
|