diff --git a/pom.xml b/pom.xml
index 621faac..df1627b 100755
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
groupId
AFKDetector
- 2.1.3
+ 2.1.4
AFKDetector
${project.artifactId}
diff --git a/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java b/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java
index 778efdc..8ba0fce 100755
--- a/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java
+++ b/src/main/java/com/alttd/afkdectector/AFKCheckTimer.java
@@ -7,6 +7,7 @@ import com.alttd.afkdectector.config.Config;
import com.alttd.afkdectector.config.Messages;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.Template;
+import net.kyori.adventure.text.minimessage.template.TemplateResolver;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
@@ -60,7 +61,7 @@ public class AFKCheckTimer extends BukkitRunnable{
player.setSleepingIgnored(true);
//player.setCanPickupItems(false);
plugin.AFKPlayers.addEntry(player.getName());
- Bukkit.broadcast(MiniMessage.get().parse(Messages.AFKTOGGLEON.getMessage(), Template.of("player", player.getName())), "afkdetector.notify");
+ Bukkit.broadcast(MiniMessage.miniMessage().deserialize(Messages.AFKTOGGLEON.getMessage(), TemplateResolver.templates(Template.template("player", player.getName()))), "afkdetector.notify");
}
if(System.currentTimeMillis() - standingTime > afkplayer.getafkTime() * 60 * 1000) {
MessageTimer currentTimer = plugin.messageTimers.get(uuid);
diff --git a/src/main/java/com/alttd/afkdectector/AFKDetector.java b/src/main/java/com/alttd/afkdectector/AFKDetector.java
index 3a539eb..b9c836f 100755
--- a/src/main/java/com/alttd/afkdectector/AFKDetector.java
+++ b/src/main/java/com/alttd/afkdectector/AFKDetector.java
@@ -113,10 +113,8 @@ public class AFKDetector extends JavaPlugin implements Listener{
@EventHandler
public void onJoin(PlayerJoinEvent event) {
Player player = event.getPlayer();
- if (player != null) {
- PlayerAfkTime.put(player.getUniqueId(), getPlayerAfktime(player));
- players.put(player.getUniqueId(), new AFKPlayer(player, this));
- }
+ PlayerAfkTime.put(player.getUniqueId(), getPlayerAfktime(player));
+ players.put(player.getUniqueId(), new AFKPlayer(player, this));
if(Bukkit.getOnlinePlayers().size() >= Config.PLAYERLIMIT && !Config.SERVERFULL) {
fulloverride = true;
}
@@ -126,9 +124,7 @@ public class AFKDetector extends JavaPlugin implements Listener{
public void onQuit(PlayerQuitEvent event) {
Player player = event.getPlayer();
// Remove the players from the timer if they logout
- if (player != null) {
- players.remove(player.getUniqueId());
- }
+ players.remove(player.getUniqueId());
if(Bukkit.getOnlinePlayers().size() < Config.PLAYERLIMIT && fulloverride){
fulloverride = false;
}
@@ -140,9 +136,7 @@ public class AFKDetector extends JavaPlugin implements Listener{
return;
}
Player player = event.getPlayer();
- if (player != null) {
- getPlayer(player).ResetAFK();
- }
+ getPlayer(player).ResetAFK();
}
@EventHandler
@@ -151,10 +145,8 @@ public class AFKDetector extends JavaPlugin implements Listener{
return;
}
Player player = event.getPlayer();
- if (player != null) {
- getPlayer(player).ResetAFK();
- }
- }
+ getPlayer(player).ResetAFK();
+ }
/* @EventHandler
public void onPlayerMove(PlayerMoveEvent event) {
diff --git a/src/main/java/com/alttd/afkdectector/MessageTimer.java b/src/main/java/com/alttd/afkdectector/MessageTimer.java
index f1acf6e..378118e 100755
--- a/src/main/java/com/alttd/afkdectector/MessageTimer.java
+++ b/src/main/java/com/alttd/afkdectector/MessageTimer.java
@@ -45,12 +45,12 @@ public class MessageTimer extends BukkitRunnable {
return;
}
if(Config.COUNTDOWNENABLED) {
- MiniMessage miniMessage = MiniMessage.get();
- Title title = Title.title(miniMessage.parse(Messages.COUNTDOWNTITLE1.getMessage()),
- miniMessage.parse(Messages.COUNTDOWNTITLE2.getMessage()));
+ MiniMessage miniMessage = MiniMessage.miniMessage();
+ Title title = Title.title(miniMessage.deserialize(Messages.COUNTDOWNTITLE1.getMessage()),
+ miniMessage.deserialize(Messages.COUNTDOWNTITLE2.getMessage()));
//Title.Times.of(Config.FADEIN, Config.STAY, Config.STAY);
player.showTitle(title);
- player.sendMessage(miniMessage.parse(Messages.COUNTDOWNMESSAGE.getMessage()));
+ player.sendMessage(miniMessage.deserialize(Messages.COUNTDOWNMESSAGE.getMessage()));
}
repeats = repeats - 1;
diff --git a/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java b/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java
index f873883..4cdaba9 100755
--- a/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java
+++ b/src/main/java/com/alttd/afkdectector/afkplayer/AFKPlayer.java
@@ -5,6 +5,7 @@ import java.util.UUID;
import com.alttd.afkdectector.config.Messages;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.Template;
+import net.kyori.adventure.text.minimessage.template.TemplateResolver;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
@@ -69,7 +70,7 @@ public class AFKPlayer {
public void ResetAFK() {
if(isafk) {
- Bukkit.broadcast(MiniMessage.get().parse(Messages.AFKTOGGLEOFF.getMessage(), Template.of("player", playerName)), "afkdetector.notify");
+ Bukkit.broadcast(MiniMessage.miniMessage().deserialize(Messages.AFKTOGGLEOFF.getMessage(), TemplateResolver.templates(Template.template("player", playerName))), "afkdetector.notify");
}
standingTime = System.currentTimeMillis();
playerToSphereCenter = Bukkit.getPlayer(getPlayerUuid()).getLocation();
diff --git a/src/main/java/com/alttd/afkdectector/command/AFKCheckCommand.java b/src/main/java/com/alttd/afkdectector/command/AFKCheckCommand.java
index 186dfda..c853bb4 100755
--- a/src/main/java/com/alttd/afkdectector/command/AFKCheckCommand.java
+++ b/src/main/java/com/alttd/afkdectector/command/AFKCheckCommand.java
@@ -1,6 +1,7 @@
package com.alttd.afkdectector.command;
import com.alttd.afkdectector.AFKDetector;
+import com.alttd.afkdectector.afkplayer.AFKPlayer;
import com.alttd.afkdectector.config.Messages;
import net.kyori.adventure.audience.Audience;
import net.kyori.adventure.text.Component;
@@ -14,8 +15,11 @@ import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
+import org.bukkit.util.StringUtil;
+import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
public class AFKCheckCommand implements CommandExecutor, TabCompleter {
@@ -36,9 +40,9 @@ public class AFKCheckCommand implements CommandExecutor, TabCompleter {
sender.sendMessage(Component.text(command.getUsage(), NamedTextColor.RED));
return true;
}
- MiniMessage miniMessage = MiniMessage.get();
- target.showTitle(Title.title(miniMessage.parse(Messages.AFKCHECKTITLE.getMessage()),
- miniMessage.parse(Messages.AFKCHECKSUBTITLE.getMessage())));
+ MiniMessage miniMessage = MiniMessage.miniMessage();
+ target.showTitle(Title.title(miniMessage.deserialize(Messages.AFKCHECKTITLE.getMessage()),
+ miniMessage.deserialize(Messages.AFKCHECKSUBTITLE.getMessage())));
if(sender instanceof Player) {
Player player = (Player) sender;
String cmd = "msg " + args[0] + " " + Messages.AFKCHECKMESSAGE.getMessage();
@@ -53,6 +57,10 @@ public class AFKCheckCommand implements CommandExecutor, TabCompleter {
@Override
public List onTabComplete(CommandSender commandSender, Command command, String s, String[] strings) {
+ List completions = new ArrayList<>();
+ if (strings.length == 1) {
+ StringUtil.copyPartialMatches(strings[0], plugin.players.values().stream().filter(AFKPlayer::isafk).map(AFKPlayer::getPlayerName).collect(Collectors.toList()), completions);
+ }
return null;
}
}
\ No newline at end of file
diff --git a/src/main/java/com/alttd/afkdectector/command/AFKListCommand.java b/src/main/java/com/alttd/afkdectector/command/AFKListCommand.java
index 5e510bb..e9d86df 100755
--- a/src/main/java/com/alttd/afkdectector/command/AFKListCommand.java
+++ b/src/main/java/com/alttd/afkdectector/command/AFKListCommand.java
@@ -8,6 +8,7 @@ import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.Template;
+import net.kyori.adventure.text.minimessage.template.TemplateResolver;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
@@ -28,24 +29,24 @@ public class AFKListCommand implements CommandExecutor, TabCompleter {
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
int afkplayers = 0;
Component message = Component.empty();
- MiniMessage miniMessage = MiniMessage.get();
+ MiniMessage miniMessage = MiniMessage.miniMessage();
for (AFKPlayer afkplayer : plugin.players.values()) {
long standingTime = afkplayer.getstandingTime();
if(System.currentTimeMillis() - standingTime > Config.TOGGLETIME * 60 * 1000) {
afkplayers += 1;
message = message.append(Component.newline());
List templates = new ArrayList<>(List.of(
- Template.of("player", afkplayer.getPlayerName()),
- Template.of("afktime", (System.currentTimeMillis() - standingTime) / 1000 + "")
+ Template.template("player", afkplayer.getPlayerName()),
+ Template.template("afktime", (System.currentTimeMillis() - standingTime) / 1000 + "")
));
- Component userinfo = miniMessage.parse(Messages.AFK_LIST_ENTRY.getMessage(), templates);
+ Component userinfo = miniMessage.deserialize(Messages.AFK_LIST_ENTRY.getMessage(), TemplateResolver.templates(templates));
message = message.append(userinfo);
}
}
List templates = new ArrayList<>(List.of(
- Template.of("afkplayers", Integer.toString(afkplayers))
+ Template.template("afkplayers", Integer.toString(afkplayers))
));
- Component component = miniMessage.parse(Messages.AFK_LIST.getMessage(), templates);
+ Component component = miniMessage.deserialize(Messages.AFK_LIST.getMessage(), TemplateResolver.templates(templates));
sender.sendMessage(component.append(message));
return true;
}