PaperMC/patches/server/0958-Add-player-idle-duration-API.patch

30 lines
1.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: booky10 <boooky10@gmail.com>
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/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3155a7978f9cb77c7cfe299f751f2231ba71c478..7523db3196409c5d04069ff4bd22ba06bcfbbe84 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -3271,6 +3271,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
// Paper end
+ // Paper start
+ @Override
+ public Duration getIdleDuration() {
+ return Duration.ofMillis(net.minecraft.Util.getMillis() - this.getHandle().getLastActionTime());
+ }
+
+ @Override
+ public void resetIdleDuration() {
+ this.getHandle().resetLastActionTime();
+ }
+ // Paper end
+
public Player.Spigot spigot()
{
return this.spigot;