diff options
author | md_5 <git@md-5.net> | 2014-07-12 16:03:36 +1000 |
---|---|---|
committer | KHobbits <rob@khobbits.co.uk> | 2014-07-19 20:07:50 +0100 |
commit | 035182fcda8acf77d3727ce21993e9bb57c90077 (patch) | |
tree | ec572bba04047317cadbf153848c2c08c42d2bca /Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java | |
parent | 310e41396b8122bb4889a6c757597b5ac2db5b78 (diff) | |
download | Essentials-035182fcda8acf77d3727ce21993e9bb57c90077.tar Essentials-035182fcda8acf77d3727ce21993e9bb57c90077.tar.gz Essentials-035182fcda8acf77d3727ce21993e9bb57c90077.tar.lz Essentials-035182fcda8acf77d3727ce21993e9bb57c90077.tar.xz Essentials-035182fcda8acf77d3727ce21993e9bb57c90077.zip |
Optimize player / user iteration.
* Add a method for backwards compatability with unmapped code.
* Convert all getOnlinePlayers() calls to use this method, part of the IEssentials interface
* Add a new method getOnlineUsers() Ljava/lang/Iterable;
* Convert appropriate calls to use this method
* Update Bukkit to #1945
* Update CraftBukkit to #3103
Diffstat (limited to 'Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java')
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java b/Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java index 7dfa594fc..ccb297f14 100644 --- a/Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java +++ b/Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java @@ -38,10 +38,9 @@ public abstract class EssentialsLoopCommand extends EssentialsCommand else if (matchWildcards && searchTerm.contentEquals("*")) { boolean skipHidden = sender.isPlayer() && !ess.getUser(sender.getPlayer()).canInteractVanished(); - for (Player onlinePlayer : server.getOnlinePlayers()) + for (User onlineUser : ess.getOnlineUsers()) { - final User onlineUser = ess.getUser(onlinePlayer); - if (skipHidden && onlineUser.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(onlinePlayer)) + if (skipHidden && onlineUser.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(onlineUser.getBase())) { continue; } @@ -85,10 +84,9 @@ public abstract class EssentialsLoopCommand extends EssentialsCommand if (matchWildcards && (searchTerm.contentEquals("**") || searchTerm.contentEquals("*"))) { - for (Player onlinePlayer : server.getOnlinePlayers()) + for (User onlineUser : ess.getOnlineUsers()) { - final User onlineUser = ess.getUser(onlinePlayer); - if (skipHidden && onlineUser.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(onlinePlayer)) + if (skipHidden && onlineUser.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(onlineUser.getBase())) { continue; } @@ -107,10 +105,9 @@ public abstract class EssentialsLoopCommand extends EssentialsCommand if (matchedPlayers.isEmpty()) { final String matchText = searchTerm.toLowerCase(Locale.ENGLISH); - for (Player onlinePlayer : server.getOnlinePlayers()) + for (User player : ess.getOnlineUsers()) { - final User player = ess.getUser(onlinePlayer); - if (skipHidden && player.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(onlinePlayer)) + if (skipHidden && player.isHidden(sender.getPlayer()) && !sender.getPlayer().canSee(player.getBase())) { continue; } |