diff --git a/src/cz/gamesites/mc/antiafk/AntiAFK.java b/src/cz/gamesites/mc/antiafk/AntiAFK.java index 9c76635..fbaa3ad 100644 --- a/src/cz/gamesites/mc/antiafk/AntiAFK.java +++ b/src/cz/gamesites/mc/antiafk/AntiAFK.java @@ -30,9 +30,9 @@ import net.md_5.bungee.api.ChatColor; public class AntiAFK extends JavaPlugin implements Listener { // frequency of checks - private static final int CHECK_INTERVAL = 2 * 20; + public static final int CHECK_INTERVAL = 20 * 20; // how many times a check has to fail in order to mark the player as AFK - private static final int STRIKES_AFK = 3; + public static final int STRIKES_AFK = 3; private static AntiAFK INSTANCE = null; private HashMap lastPositions = new HashMap<>(); @@ -159,7 +159,23 @@ public class AntiAFK extends JavaPlugin implements Listener { } } } - + + public static boolean isAFKWarningMenu(Inventory inv) { + return INSTANCE.inventories.contains(inv); + } + + public static boolean isPlayerAway(Player p) { + return INSTANCE.strikes.getOrDefault(p, 0) > STRIKES_AFK; + } + + public static long getPlayerAwaySeconds(Player p) { + return INSTANCE.strikes.getOrDefault(p, 0) * CHECK_INTERVAL / 20; + } + + public static void resetPlayerAwayTimer(Player p) { + INSTANCE.strikes.put(p, 0); + } + public static List getAwayPlayers() { return INSTANCE.strikes.entrySet() .stream()