From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Martijn Muijsers Date: Wed, 30 Nov 2022 12:57:37 +0100 Subject: [PATCH] Specific interval TPS API License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) Gale - https://galemc.org diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java index f78b5fd3c3347d28da58777bff88903d2eb140f6..b6fbde1651505bd1c11d01f25ec4a3cdbd1e289e 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java @@ -2229,6 +2229,37 @@ public final class Bukkit { return server.getTPS(); } + // Gale start - specific interval TPS API + + /** + * Gets the average server TPS over the last 1 minute + * + * @return the average server TPS over the last 1 minute + */ + public static double get1MinuteTPSAverage() { + return server.get1MinuteTPSAverage(); + } + + /** + * Gets the average server TPS over the last 5 minutes + * + * @return the average server TPS over the last 5 minutes + */ + public static double get5MinuteTPSAverage() { + return server.get5MinuteTPSAverage(); + } + + /** + * Gets the average server TPS over the last 15 minutes + * + * @return the average server TPS over the last 15 minutes + */ + public static double get15MinuteTPSAverage() { + return server.get15MinuteTPSAverage(); + } + + // Gale end - specific interval TPS API + /** * Get a sample of the servers last tick times (in nanos) * diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java index 1e0bc616b00cd1ec22cb11adb85ee152dc10cd6e..5f6e299f62d8c669f4f8ccec19b3055d246df157 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -1901,6 +1901,31 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi @NotNull public double[] getTPS(); + // Gale start - specific interval TPS API + + /** + * Gets the average server TPS over the last 1 minute + * + * @return the average server TPS over the last 1 minute + */ + double get1MinuteTPSAverage(); + + /** + * Gets the average server TPS over the last 5 minutes + * + * @return the average server TPS over the last 5 minutes + */ + double get5MinuteTPSAverage(); + + /** + * Gets the average server TPS over the last 15 minutes + * + * @return the average server TPS over the last 15 minutes + */ + double get15MinuteTPSAverage(); + + // Gale end - specific interval TPS API + /** * Get a sample of the servers last tick times (in nanos) *