From e15133c60a8edc3daa00c903b3468cb87d4ee5c7 Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Wed, 2 Jul 2025 13:12:24 +0800 Subject: [PATCH] Do thread check if async mob spawn enabled --- .../features/0004-Pufferfish-Optimize-mob-spawning.patch | 6 +++--- .../features/0128-SparklyPaper-Parallel-world-ticking.patch | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/leaf-server/minecraft-patches/features/0004-Pufferfish-Optimize-mob-spawning.patch b/leaf-server/minecraft-patches/features/0004-Pufferfish-Optimize-mob-spawning.patch index c1290ce2..c3099418 100644 --- a/leaf-server/minecraft-patches/features/0004-Pufferfish-Optimize-mob-spawning.patch +++ b/leaf-server/minecraft-patches/features/0004-Pufferfish-Optimize-mob-spawning.patch @@ -55,7 +55,7 @@ index bd7f792c45059f0652e530608ef0c77c5caf7cfa..649403ef1d5d898052412d6d47783769 } } diff --git a/net/minecraft/server/level/ServerChunkCache.java b/net/minecraft/server/level/ServerChunkCache.java -index 7a18b11782b2524280fddf20e6b1cabdddf07c49..55f708438e5d71cf14f4e632fc20a65b4bfb7d25 100644 +index 065eccdadd60dc66cf1aa2e017118449a204b9a1..4baa42f2da2915f73c38485d551e941a06a5121e 100644 --- a/net/minecraft/server/level/ServerChunkCache.java +++ b/net/minecraft/server/level/ServerChunkCache.java @@ -179,6 +179,8 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon @@ -181,7 +181,7 @@ index 7a18b11782b2524280fddf20e6b1cabdddf07c49..55f708438e5d71cf14f4e632fc20a65b if (true) { // Paper - rewrite chunk system diff --git a/net/minecraft/world/level/entity/EntityTickList.java b/net/minecraft/world/level/entity/EntityTickList.java -index 423779a2b690f387a4f0bd07b97b50e0baefda76..dec51066fc3f57b7bdc56195313c219f45a7fbee 100644 +index 423779a2b690f387a4f0bd07b97b50e0baefda76..0d64c990730af37abaca10b7c9f840342a0ee7bd 100644 --- a/net/minecraft/world/level/entity/EntityTickList.java +++ b/net/minecraft/world/level/entity/EntityTickList.java @@ -9,7 +9,7 @@ import javax.annotation.Nullable; @@ -189,7 +189,7 @@ index 423779a2b690f387a4f0bd07b97b50e0baefda76..dec51066fc3f57b7bdc56195313c219f public class EntityTickList { - private final ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet entities = new ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet<>(); // Paper - rewrite chunk system -+ public final ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet entities = new ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet<>(); // Paper - rewrite chunk system // Pufferfish - private->public ++ public final ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet entities = new ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet<>(org.dreeam.leaf.config.modules.async.AsyncMobSpawning.enabled); // Paper - rewrite chunk system // Pufferfish - private->public and do thread check private void ensureActiveIsNotIterated() { // Paper - rewrite chunk system diff --git a/leaf-server/minecraft-patches/features/0128-SparklyPaper-Parallel-world-ticking.patch b/leaf-server/minecraft-patches/features/0128-SparklyPaper-Parallel-world-ticking.patch index be19a06a..2a4844b8 100644 --- a/leaf-server/minecraft-patches/features/0128-SparklyPaper-Parallel-world-ticking.patch +++ b/leaf-server/minecraft-patches/features/0128-SparklyPaper-Parallel-world-ticking.patch @@ -1661,12 +1661,12 @@ index 238e015d4ff5fabb99e569118f253366d545d269..47528dec6b1a2b36e71013a9372425a7 int y = pos.getY(); LevelChunkSection section = this.getSection(this.getSectionIndex(y)); diff --git a/net/minecraft/world/level/entity/EntityTickList.java b/net/minecraft/world/level/entity/EntityTickList.java -index dec51066fc3f57b7bdc56195313c219f45a7fbee..359ead3bd32862206bccb4504ad5b4d027dba7a9 100644 +index 0d64c990730af37abaca10b7c9f840342a0ee7bd..5a90b3bffeeb08a168b370e49d18c5f8b257a980 100644 --- a/net/minecraft/world/level/entity/EntityTickList.java +++ b/net/minecraft/world/level/entity/EntityTickList.java @@ -11,16 +11,36 @@ import net.minecraft.world.entity.Entity; public class EntityTickList { - public final ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet entities = new ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet<>(); // Paper - rewrite chunk system // Pufferfish - private->public + public final ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet entities = new ca.spottedleaf.moonrise.common.list.IteratorSafeOrderedReferenceSet<>(org.dreeam.leaf.config.modules.async.AsyncMobSpawning.enabled); // Paper - rewrite chunk system // Pufferfish - private->public and do thread check + // Leaf start - SparklyPaper - parallel world ticking mod + // preserve original constructor