36 Zeilen
1.7 KiB
Diff
36 Zeilen
1.7 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
||
|
Date: Sat, 13 Nov 2021 12:36:26 -0800
|
||
|
Subject: [PATCH] Per world ticks per spawn settings
|
||
|
|
||
|
|
||
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||
|
index f476ba6c97944bdffae5aacae2e285d17541f46e..bc89f9e90af3d69872a58c47a4c2545ba91b6ba5 100644
|
||
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||
|
@@ -204,6 +204,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||
|
return this.getChunkIfLoaded(chunkX, chunkZ) != null;
|
||
|
}
|
||
|
// Paper end - Use getChunkIfLoadedImmediately
|
||
|
+ // Paper start - per world ticks per spawn
|
||
|
+ private int getTicksPerSpawn(SpawnCategory spawnCategory) {
|
||
|
+ final int perWorld = this.paperConfig().entities.spawning.ticksPerSpawn.getInt(CraftSpawnCategory.toNMS(spawnCategory));
|
||
|
+ if (perWorld >= 0) {
|
||
|
+ return perWorld;
|
||
|
+ }
|
||
|
+ return this.getCraftServer().getTicksPerSpawns(spawnCategory);
|
||
|
+ }
|
||
|
+ // Paper end
|
||
|
|
||
|
public abstract ResourceKey<LevelStem> getTypeKey();
|
||
|
|
||
|
@@ -216,7 +225,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||
|
// CraftBukkit Ticks things
|
||
|
for (SpawnCategory spawnCategory : SpawnCategory.values()) {
|
||
|
if (CraftSpawnCategory.isValidForLimits(spawnCategory)) {
|
||
|
- this.ticksPerSpawnCategory.put(spawnCategory, (long) this.getCraftServer().getTicksPerSpawns(spawnCategory));
|
||
|
+ this.ticksPerSpawnCategory.put(spawnCategory, this.getTicksPerSpawn(spawnCategory)); // Paper
|
||
|
}
|
||
|
}
|
||
|
|