From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Ivan Pekov <ivan@mrivanplays.com>
Date: Sun, 27 Sep 2020 18:01:50 +0300
Subject: [PATCH] Add last tick time API

Original patch by:
Co-authored-by: tr7zw <tr7zw@live.de>

diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index d754200879bda29d582998433e1a304a6988bbbb..d2d554492ec8fb2d253dd4855c31850bc380b218 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -1963,4 +1963,14 @@ public final class Bukkit {
         return server.isLagging();
     }
     // Purpur end
+
+    // Yatopia start
+    @Deprecated
+    public static long getLastTickMs() {
+        return server.getLastTickMs();
+    }
+    @NotNull public static java.time.Duration getLastTickTime() {
+        return server.getLastTickTime();
+    }
+    // Yatopia end
 }
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 199d42622c2e891631c696a92df00abc6e6c3219..be7e1d46c52f8c94a56e31096d4fad81b70f4d61 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1754,4 +1754,24 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
      */
     boolean isLagging();
     // Purpur end
+
+    // Yatopia start
+    /**
+     * Returns the time the last tick took in milliseconds.
+     *
+     * @return long time value
+     * @deprecated newer method with java's Duration and a possibility to convert it from millis to something else
+     */
+    @Deprecated
+    default long getLastTickMs() {
+        return getLastTickTime().toMillis();
+    }
+    /**
+     * Returns the time in {@link java.time.Duration} the last tick took.
+     *
+     * @return duration
+     */
+    @NotNull
+    java.time.Duration getLastTickTime();
+    // Yatopia end
 }
