aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0423-Add-player-idle-duration-API.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0423-Add-player-idle-duration-API.patch')
-rw-r--r--patches/api/0423-Add-player-idle-duration-API.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/patches/api/0423-Add-player-idle-duration-API.patch b/patches/api/0423-Add-player-idle-duration-API.patch
new file mode 100644
index 0000000000..2fbfc5dc58
--- /dev/null
+++ b/patches/api/0423-Add-player-idle-duration-API.patch
@@ -0,0 +1,41 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: booky10 <[email protected]>
+Date: Sat, 14 Oct 2023 03:11:11 +0200
+Subject: [PATCH] Add player idle duration API
+
+Implements API for getting and resetting a player's idle duration.
+
+diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
+index 24dc710f61d08253f66e7ecfd69873e7ebf68d1b..09094f55509eaf66670c27409b4d5ec3d73412b0 100644
+--- a/src/main/java/org/bukkit/entity/Player.java
++++ b/src/main/java/org/bukkit/entity/Player.java
+@@ -3742,6 +3742,29 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
+ void increaseWardenWarningLevel();
+ // Paper end
+
++ // Paper start
++ /**
++ * The idle duration is reset when the player
++ * sends specific action packets.
++ * <p>
++ * After the idle duration exceeds {@link org.bukkit.Bukkit#getIdleTimeout()}, the
++ * player will be kicked for {@link org.bukkit.event.player.PlayerKickEvent.Cause#IDLING}.
++ *
++ * @return the current idle duration of this player
++ */
++ @NotNull Duration getIdleDuration();
++
++ /**
++ * Resets this player's idle duration.
++ * <p>
++ * After the idle duration exceeds {@link org.bukkit.Bukkit#getIdleTimeout()}, the
++ * player will be kicked for {@link org.bukkit.event.player.PlayerKickEvent.Cause#IDLING}.
++ *
++ * @see #getIdleDuration()
++ */
++ void resetIdleDuration();
++ // Paper end
++
+ @NotNull
+ @Override
+ Spigot spigot();