diff --git a/build.gradle.kts b/build.gradle.kts index 8579a7f..2b045fa 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } group = "com.alttd" -version = "2.1.4" +version = "2.1.5" description = "Altitude AFK Detector plugin." apply() @@ -43,5 +43,5 @@ tasks { } dependencies { - implementation("com.alttd:Galaxy-API:1.19.4-R0.1-SNAPSHOT") + implementation("com.alttd:Galaxy-API:1.20.1-R0.1-SNAPSHOT") } \ No newline at end of file diff --git a/gradlew b/gradlew old mode 100644 new mode 100755 diff --git a/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java b/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java index ee48cb7..152b564 100755 --- a/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java +++ b/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java @@ -88,8 +88,7 @@ public class AFKCheckTimer extends BukkitRunnable { afkPlayer.setPlayerToSphereCenter(pastLocation); afkPlayer.setStandingTime(System.currentTimeMillis()); player.setSleepingIgnored(false); - plugin.AFKPlayers.removeEntry(player.getName()); - afkPlayer.resetAFK(player); + afkPlayer.ResetAFK(); MessageTimer currentTimer = plugin.messageTimers.get(player.getUniqueId()); if (currentTimer != null) { @@ -101,7 +100,6 @@ public class AFKCheckTimer extends BukkitRunnable { afkPlayer.setAFK(player); player.setSleepingIgnored(true); //player.setCanPickupItems(false); - plugin.AFKPlayers.addEntry(player.getName()); if (Config.AFK_TOGGLE_MESSAGES) { TagResolver placeholders = TagResolver.resolver( Placeholder.parsed("player", player.getName()) diff --git a/src/main/java/com/alttd/afkdectector/AFKDetector.java b/src/main/java/com/alttd/afkdectector/AFKDetector.java index c4bf156..b6adc6e 100755 --- a/src/main/java/com/alttd/afkdectector/AFKDetector.java +++ b/src/main/java/com/alttd/afkdectector/AFKDetector.java @@ -46,10 +46,6 @@ public class AFKDetector extends JavaPlugin implements Listener { public boolean fullOverride; public static MiniMessage miniMessage; - /** - * AFK players need to be added to a team. - */ - Team AFKPlayers; @Override public void onEnable() { @@ -57,7 +53,6 @@ public class AFKDetector extends JavaPlugin implements Listener { instance = this; miniMessage = MiniMessage.miniMessage(); loadConfig(null); - setupAFKStats(); getServer().getPluginManager().registerEvents(this, this); //getCommand("afk").setExecutor(new AFKCommand(this)); getCommand("afklist").setExecutor(new AFKListCommand(this)); @@ -88,20 +83,6 @@ public class AFKDetector extends JavaPlugin implements Listener { return players.get(player.getUniqueId()); } - private void setupAFKStats() { - if (Bukkit.getScoreboardManager().getMainScoreboard().getTeam("AFKPlayers") == null) { - AFKPlayers = Bukkit.getScoreboardManager().getMainScoreboard().registerNewTeam("AFKPlayers"); - } else { - AFKPlayers = Bukkit.getScoreboardManager().getMainScoreboard().getTeam("AFKPlayers"); - } - if (AFKPlayers == null) { - Logger.warn("Could not find scoreboard AFKPlayers"); - return; - } - AFKPlayers.setOption(Team.Option.COLLISION_RULE, Team.OptionStatus.NEVER); - //AFKPlayers.setOption(Team.Option.NAME_TAG_VISIBILITY, Team.OptionStatus.NEVER); - } - /** * Get the afk time for a player */ diff --git a/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java b/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java index fcab086..147a496 100755 --- a/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java +++ b/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java @@ -20,8 +20,7 @@ import java.util.concurrent.TimeUnit; public class AFKPlayer { - private final String playerName; - private final UUID uuid; + private final Player player; private Location playerToSphereCenter; private long standingTime; private final int afkTime; @@ -32,8 +31,7 @@ public class AFKPlayer { private final String afkKickSoon; public AFKPlayer(Player player, AFKDetector plugin) { - this.playerName = player.getName(); - this.uuid = player.getUniqueId(); + this.player = player; this.playerToSphereCenter = player.getLocation(); this.standingTime = System.currentTimeMillis(); this.afkTime = plugin.getAllowedAFKTime(player); @@ -45,11 +43,11 @@ public class AFKPlayer { } public String getPlayerName() { - return this.playerName; + return this.player.getName(); } public UUID getPlayerUuid() { - return this.uuid; + return this.player.getUniqueId(); } public Location getPlayerToSphereCenter() { @@ -80,10 +78,19 @@ public class AFKPlayer { return x < Config.SPAWN_MAX_X && x > Config.SPAWN_MIN_X && z < Config.SPAWN_MAX_Z && z > Config.SPAWN_MIN_Z; } - public void resetAFK(Player player) { + public void setAFK(boolean bool) { + isAFK = bool; + player.setAfk(bool); + } + + public boolean isAFK() { + return isAFK; + } + + public void ResetAFK() { if (isAFK && Config.AFK_TOGGLE_MESSAGES) { TagResolver placeholders = TagResolver.resolver( - Placeholder.parsed("player", playerName) + Placeholder.parsed("player", getPlayerName()) ); Component component = AFKDetector.miniMessage.deserialize(Messages.AFK_TOGGLE_OFF.getMessage(), placeholders); Bukkit.broadcast(component, "afkdetector.notify"); @@ -100,6 +107,8 @@ public class AFKPlayer { bossBar.setColor(BarColor.RED); player.setAfk(true); isAFK = true; + playerToSphereCenter = (player == null) ? null : player.getLocation(); + setAFK(false); } public boolean isAFK() {