40 lines
2.0 KiB
Diff
40 lines
2.0 KiB
Diff
From 81ae8d6dcf6c9f936583ba0c8fa5577c538d2f18 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sat, 21 Apr 2018 11:21:48 -0400
|
|
Subject: [PATCH] Configurable Allowance of Permanent Chunk Loaders
|
|
|
|
This disables the behavior that allows players to keep chunks permanently loaded
|
|
by default and allows server operators to enable it if they wish.
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index 9ef2b1635..cc1914d8c 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -502,4 +502,10 @@ public class PaperWorldConfig {
|
|
private void disableSprintInterruptionOnAttack() {
|
|
disableSprintInterruptionOnAttack = getBoolean("game-mechanics.disable-sprint-interruption-on-attack", false);
|
|
}
|
|
+
|
|
+ public boolean allowPermaChunkLoaders = false;
|
|
+ private void allowPermaChunkLoaders() {
|
|
+ allowPermaChunkLoaders = getBoolean("game-mechanics.allow-permanent-chunk-loaders", allowPermaChunkLoaders);
|
|
+ log("Allow Perma Chunk Loaders: " + (allowPermaChunkLoaders ? "enabled" : "disabled"));
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
|
index 55dada668..0eba3df57 100644
|
|
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
|
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
|
@@ -148,7 +148,7 @@ public class ChunkProviderServer implements IChunkProvider {
|
|
}
|
|
|
|
public Chunk getChunkAt(int i, int j, Runnable runnable, boolean generate) {
|
|
- Chunk chunk = getLoadedChunkAt(i, j);
|
|
+ Chunk chunk = world.paperConfig.allowPermaChunkLoaders ? getLoadedChunkAt(i, j) : getChunkIfLoaded(i, j); // Paper - Configurable perma chunk loaders
|
|
ChunkRegionLoader loader = null;
|
|
|
|
if (this.chunkLoader instanceof ChunkRegionLoader) {
|
|
--
|
|
2.14.3
|
|
|