mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-10 00:28:22 +02:00
Give user chance to get display name set before displaying geoip.
This commit is contained in:
@@ -42,14 +42,26 @@ public class EssentialsGeoIPPlayerListener implements Listener, IConf
|
|||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.MONITOR)
|
@EventHandler(priority = EventPriority.MONITOR)
|
||||||
public void onPlayerJoin(PlayerJoinEvent event)
|
public void onPlayerJoin(final PlayerJoinEvent event)
|
||||||
{
|
{
|
||||||
User u = ess.getUser(event.getPlayer());
|
ess.scheduleAsyncDelayedTask(new Runnable()
|
||||||
if (u.isAuthorized("essentials.geoip.hide") || event.getPlayer().getAddress() == null)
|
{
|
||||||
|
@Override
|
||||||
|
public void run()
|
||||||
|
{
|
||||||
|
delayedJoin(event.getPlayer());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void delayedJoin(Player player)
|
||||||
|
{
|
||||||
|
User u = ess.getUser(player);
|
||||||
|
if (u.isAuthorized("essentials.geoip.hide") || player.getAddress() == null)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
InetAddress address = event.getPlayer().getAddress().getAddress();
|
InetAddress address = player.getAddress().getAddress();
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
if (config.getBoolean("database.show-cities", false))
|
if (config.getBoolean("database.show-cities", false))
|
||||||
{
|
{
|
||||||
@@ -79,9 +91,9 @@ public class EssentialsGeoIPPlayerListener implements Listener, IConf
|
|||||||
}
|
}
|
||||||
if (config.getBoolean("show-on-login", true) && !u.isHidden())
|
if (config.getBoolean("show-on-login", true) && !u.isHidden())
|
||||||
{
|
{
|
||||||
for (Player player : event.getPlayer().getServer().getOnlinePlayers())
|
for (Player onlinePlayer : player.getServer().getOnlinePlayers())
|
||||||
{
|
{
|
||||||
User user = ess.getUser(player);
|
User user = ess.getUser(onlinePlayer);
|
||||||
if (user.isAuthorized("essentials.geoip.show"))
|
if (user.isAuthorized("essentials.geoip.show"))
|
||||||
{
|
{
|
||||||
user.sendMessage(_("geoipJoinFormat", u.getDisplayName(), sb.toString()));
|
user.sendMessage(_("geoipJoinFormat", u.getDisplayName(), sb.toString()));
|
||||||
|
Reference in New Issue
Block a user