summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandwhois.java14
-rw-r--r--EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java11
2 files changed, 20 insertions, 5 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
index 81e41aa30..41e7c6dd4 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
@@ -30,16 +30,24 @@ public class Commandwhois extends EssentialsCommand
{
User u = User.get(p);
String dn = ChatColor.stripColor(u.getNick());
- if (!whois.equalsIgnoreCase(dn) && !whois.equalsIgnoreCase(dn.substring(prefixLength)) && !whois.equalsIgnoreCase(u.getName())) continue;
+ if (!whois.equalsIgnoreCase(dn) && !whois.equalsIgnoreCase(dn.substring(prefixLength)) && !whois.equalsIgnoreCase(u.getName()))
+ {
+ continue;
+ }
sender.sendMessage("");
sender.sendMessage(u.getDisplayName() + " is " + u.getName());
sender.sendMessage(ChatColor.BLUE + " - Health: " + u.getHealth() + "/20");
sender.sendMessage(ChatColor.BLUE + " - Location: (" + u.getLocation().getWorld().getName() + ", " + u.getLocation().getBlockX() + ", " + u.getLocation().getBlockY() + ", " + u.getLocation().getBlockZ() + ")");
- if (!parent.getConfiguration().getBoolean("disable-eco", false)) sender.sendMessage(ChatColor.BLUE + " - Money: $" + u.getMoney());
+ if (!parent.getConfiguration().getBoolean("disable-eco", false))
+ {
+ sender.sendMessage(ChatColor.BLUE + " - Money: $" + u.getMoney());
+ }
sender.sendMessage(ChatColor.BLUE + " - Status: " + (parent.away.contains(u) ? "§cAway§f" : "Available"));
sender.sendMessage(ChatColor.BLUE + " - IP Address: " + u.getAddress().getAddress().toString());
Object location = u.getMetadata().get("location");
- if (location != null && location instanceof String) {
+ if (location != null && location instanceof String
+ && (sender instanceof Player ? User.get(sender).isAuthorized("essentials.geoip.show") : true))
+ {
sender.sendMessage(ChatColor.BLUE + " - Location: " + location.toString());
}
}
diff --git a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
index d2b431a6b..0037da209 100644
--- a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
+++ b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
@@ -18,6 +18,7 @@ import java.net.URLConnection;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.zip.GZIPInputStream;
+import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerListener;
@@ -72,11 +73,17 @@ public class EssentialsGeoIPPlayerListener extends PlayerListener implements ICo
}
if (config.getBoolean("show-on-whois", true))
{
- User.get(event.getPlayer()).setMetadata("location", sb.toString());
+ u.setMetadata("location", sb.toString());
}
if (config.getBoolean("show-on-login", true))
{
- event.getPlayer().getServer().broadcastMessage("Player " + event.getPlayer().getDisplayName() + " comes from " + sb.toString());
+ for (Player player : event.getPlayer().getServer().getOnlinePlayers())
+ {
+ User user = User.get(player);
+ if (user.isAuthorized("essentials.geoip.show")) {
+ user.sendMessage("Player " + u.getDisplayName() + " comes from " + sb.toString());
+ }
+ }
}
}