mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-21 16:09:19 +00:00
* backport: 1.21.8 async mob spawn * Move into patch * fix * fix build --------- Co-authored-by: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Co-authored-by: hayanesuru <hayanesuru@outlook.jp>
61 lines
3.6 KiB
Diff
61 lines
3.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Taiyou06 <kaandindar21@gmail.com>
|
|
Date: Tue, 8 Jul 2025 12:43:08 +0200
|
|
Subject: [PATCH] Toggleable-async-catcher
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
|
|
index e8e93538dfd71de86515d9405f728db1631e949a..796852f50d1edd5b1108ef123b4145eec8992cde 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
|
|
@@ -22,7 +22,7 @@ public class ServerShutdownThread extends Thread {
|
|
return;
|
|
}
|
|
// Looks stalled, close async
|
|
- org.spigotmc.AsyncCatcher.enabled = false; // Spigot
|
|
+ org.dreeam.leaf.config.modules.misc.AsyncCatcherConfig.enabled = false; // Spigot
|
|
server.forceTicks = true;
|
|
this.server.close();
|
|
while (!server.hasFullyShutdown) Thread.sleep(1000);
|
|
diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java
|
|
index 50f01faa88c8c658252fade3748f20e48e9c8432..e584205c3e1412bf2f2c4e4eb114a29cebc73fad 100644
|
|
--- a/src/main/java/org/spigotmc/AsyncCatcher.java
|
|
+++ b/src/main/java/org/spigotmc/AsyncCatcher.java
|
|
@@ -4,9 +4,8 @@ import net.minecraft.server.MinecraftServer;
|
|
|
|
public class AsyncCatcher {
|
|
|
|
- public static boolean enabled = true;
|
|
-
|
|
public static void catchOp(String reason) {
|
|
+ if (!org.dreeam.leaf.config.modules.misc.AsyncCatcherConfig.enabled) {return;}
|
|
if (!ca.spottedleaf.moonrise.common.util.TickThread.isTickThread()) { // Paper - chunk system
|
|
MinecraftServer.LOGGER.error("Thread {} failed main thread check: {}", Thread.currentThread().getName(), reason, new Throwable()); // Paper
|
|
throw new IllegalStateException("Asynchronous " + reason + "!");
|
|
diff --git a/src/main/java/org/spigotmc/RestartCommand.java b/src/main/java/org/spigotmc/RestartCommand.java
|
|
index 3287d399511446178dfb0a34f9b1a3a2510d877d..d701cc85e0595d9779f591c1d20f0e35d4756a05 100644
|
|
--- a/src/main/java/org/spigotmc/RestartCommand.java
|
|
+++ b/src/main/java/org/spigotmc/RestartCommand.java
|
|
@@ -30,7 +30,7 @@ public class RestartCommand extends Command {
|
|
}
|
|
|
|
private static void restart(final String restartScript) {
|
|
- AsyncCatcher.enabled = false; // Disable async catcher in case it interferes with us
|
|
+ org.dreeam.leaf.config.modules.misc.AsyncCatcherConfig.enabled = false; // Disable async catcher in case it interferes with us
|
|
try {
|
|
// Paper - extract method and cleanup
|
|
boolean isRestarting = addShutdownHook(restartScript);
|
|
diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java
|
|
index 16e5ab49bc96f64143eb9e0dff19b33a7e3b5f3a..4e11ae93c325955f0d488c2ac82e34b96dbf68ac 100644
|
|
--- a/src/main/java/org/spigotmc/WatchdogThread.java
|
|
+++ b/src/main/java/org/spigotmc/WatchdogThread.java
|
|
@@ -162,7 +162,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre
|
|
|
|
if (isLongTimeout) {
|
|
if (!server.hasStopped()) {
|
|
- AsyncCatcher.enabled = false; // Disable async catcher incase it interferes with us
|
|
+ org.dreeam.leaf.config.modules.misc.AsyncCatcherConfig.enabled = false; // Disable async catcher incase it interferes with us
|
|
server.forceTicks = true;
|
|
if (this.restart) {
|
|
RestartCommand.addShutdownHook(SpigotConfig.restartScript);
|