extended API

This commit is contained in:
Erik Bročko 2019-08-16 22:45:30 +02:00
parent b0d07bed96
commit 112f83c58d

View File

@ -30,9 +30,9 @@ import net.md_5.bungee.api.ChatColor;
public class AntiAFK extends JavaPlugin implements Listener { public class AntiAFK extends JavaPlugin implements Listener {
// frequency of checks // 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 // 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 static AntiAFK INSTANCE = null;
private HashMap<Player, int[]> lastPositions = new HashMap<>(); private HashMap<Player, int[]> lastPositions = new HashMap<>();
@ -160,6 +160,22 @@ 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<Player> getAwayPlayers() { public static List<Player> getAwayPlayers() {
return INSTANCE.strikes.entrySet() return INSTANCE.strikes.entrySet()
.stream() .stream()