9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2026-01-04 15:41:40 +00:00
Files
Leaf/patches/server/0012-Purpur-Lagging-threshold.patch
2023-03-03 13:58:13 -05:00

60 lines
3.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Tue, 23 Jul 2019 10:07:16 -0500
Subject: [PATCH] Purpur: Lagging threshold
Original license: MIT
Original project: https://github.com/PurpurMC/Purpur
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 590d697eb0b1e61d3b910ac5276598e6428189fe..fe25f51ee708c76bcf66e3280bb235713c99f79c 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -404,6 +404,7 @@ public abstract class MinecraftServer extends MinecraftServerBlockableEventLoop
public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations;
public final GaleConfigurations galeConfigurations; // Gale - Gale configuration
public static long currentTickLong = 0L; // Paper
+ public boolean lagging = false; // Purpur
public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper
@@ -1272,6 +1273,7 @@ public abstract class MinecraftServer extends MinecraftServerBlockableEventLoop
this.recentTps[1] = tps5.getAverage();
this.recentTps[2] = tps15.getAverage();
// Paper end
+ lagging = recentTps[0] < org.dreeam.leaf.LeafConfig.laggingThreshold; // Purpur
tickSection = curTime;
}
// Spigot end
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b4cb8cdacc822d9bf238fcc2029b21c28ea1753b..8e3d8b34816a4c097fa6a001aae6eaa2d416af72 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3002,4 +3002,10 @@ public final class CraftServer implements Server {
}
// Gale end - YAPFA - last tick time - API
+ // Purpur start
+ @Override
+ public boolean isLagging() {
+ return getServer().lagging;
+ }
+ // Purpur end
}
diff --git a/src/main/java/org/dreeam/leaf/LeafConfig.java b/src/main/java/org/dreeam/leaf/LeafConfig.java
index 95131d2fb1b2fff8fe787498ab4d9fbbdf970118..81a06fa14b0c47321ad37ad73b59770f1563c883 100644
--- a/src/main/java/org/dreeam/leaf/LeafConfig.java
+++ b/src/main/java/org/dreeam/leaf/LeafConfig.java
@@ -183,6 +183,11 @@ public class LeafConfig {
maxUseItemDistance = getDouble("max-UseItem-distance", maxUseItemDistance, "The max distance of UseItem for players");
}
+ public static double laggingThreshold = 19.0D;
+ private static void performance() {
+ laggingThreshold = getDouble("performance.lagging-threshold", laggingThreshold);
+ }
+
public static String commandTPSBarOutput = "<green>Tpsbar toggled <onoff> for <target>";
public static String commandTPSBarTitle = "<gray>TPS<yellow>:</yellow> <tps> MSPT<yellow>:</yellow> <mspt> Ping<yellow>:</yellow> <ping>ms";
public static BossBar.Overlay commandTPSBarProgressOverlay = BossBar.Overlay.NOTCHED_20;