diff options
author | KHobbits <rob@khobbits.co.uk> | 2014-04-27 01:10:44 +0100 |
---|---|---|
committer | KHobbits <rob@khobbits.co.uk> | 2014-04-27 01:10:44 +0100 |
commit | 0557aa58b001815257f410040533d44ebde4017c (patch) | |
tree | f54c96efe78695aa04b9f0e195bc0687fa8119ab | |
parent | b40aa438723395f9b56a820447fb74b8ddcb61c3 (diff) | |
download | Essentials-0557aa58b001815257f410040533d44ebde4017c.tar Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.gz Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.lz Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.xz Essentials-0557aa58b001815257f410040533d44ebde4017c.zip |
Switch AFK check to use UUID.
-rw-r--r-- | Essentials/src/com/earth2me/essentials/EssentialsTimer.java | 7 | ||||
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java | 22 |
2 files changed, 25 insertions, 4 deletions
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsTimer.java b/Essentials/src/com/earth2me/essentials/EssentialsTimer.java index ca205ef31..4c17fda37 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsTimer.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsTimer.java @@ -4,6 +4,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.Set; +import java.util.UUID; import java.util.logging.Level; import net.ess3.api.IEssentials; import org.bukkit.entity.Player; @@ -12,7 +13,7 @@ import org.bukkit.entity.Player; public class EssentialsTimer implements Runnable { private final transient IEssentials ess; - private final transient Set<String> onlineUsers = new HashSet<String>(); + private final transient Set<UUID> onlineUsers = new HashSet<UUID>(); private transient long lastPoll = System.nanoTime(); private final LinkedList<Double> history = new LinkedList<Double>(); private int skip1 = 0; @@ -66,7 +67,7 @@ public class EssentialsTimer implements Runnable try { final User user = ess.getUser(player); - onlineUsers.add(user.getName()); + onlineUsers.add(user.getBase().getUniqueId()); user.setLastOnlineActivity(currentTime); user.checkActivity(); } @@ -77,7 +78,7 @@ public class EssentialsTimer implements Runnable } count = 0; - final Iterator<String> iterator = onlineUsers.iterator(); + final Iterator<UUID> iterator = onlineUsers.iterator(); while (iterator.hasNext()) { count++; diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java b/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java index fd492ed6c..13fd2632c 100644 --- a/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java +++ b/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java @@ -5,6 +5,7 @@ import static com.earth2me.essentials.I18n.tl; import com.earth2me.essentials.utils.FormatUtil; import java.util.List; import java.util.Locale; +import java.util.UUID; import java.util.logging.Logger; import net.ess3.api.IEssentials; import org.bukkit.Server; @@ -86,8 +87,27 @@ public abstract class EssentialsCommand implements IEssentialsCommand private User getPlayer(final Server server, final User sourceUser, final String searchTerm, boolean getHidden, final boolean getOffline) throws PlayerNotFoundException { + final User user; + Player exPlayer; + + try + { + exPlayer = server.getPlayer(UUID.fromString(searchTerm)); + } + catch (IllegalArgumentException ex) + { + exPlayer = server.getPlayer(searchTerm); + } + + if (exPlayer != null) + { + user = ess.getUser(exPlayer); + } + else + { + user = ess.getUser(searchTerm); + } - final User user = ess.getUser(searchTerm); if (user != null) { if (!getOffline && !user.getBase().isOnline()) |