@Override public void execute(CommandSender sender, String[] args) { if ( args.length < 1 ) { sender.sendMessage( ChatColor.RED + "Please follow this command by a user name" ); return; } ProxiedPlayer user = ProxyServer.getInstance().getPlayer( args[0] ); if ( user == null ) { sender.sendMessage( ChatColor.RED + "That user is not online" ); } else { sender.sendMessage( ChatColor.BLUE + "IP of " + args[0] + " is " + user.getAddress() ); } } }
ProxiedPlayer target = bungee.getPlayer( in.readUTF() ); if ( target != null ) ProxiedPlayer player = bungee.getPlayer( in.readUTF() ); if ( player != null ) ProxiedPlayer player = bungee.getPlayer( target ); if ( player != null ) ProxiedPlayer player = bungee.getPlayer( in.readUTF() ); if ( player != null ) ProxiedPlayer player = bungee.getPlayer( in.readUTF() ); if ( player != null )
@Override public Object getPlayer(String name) { return ProxyServer.getInstance().getPlayer(name); }
ProxiedPlayer player = ProxyServer.getInstance().getPlayer( args[0] ); if ( player == null )
@Override public void execute(CommandSender sender, String[] args) { if ( args.length != 1 ) { sender.sendMessage( new ComponentBuilder( "Please follow this command by a user name" ).color( ChatColor.RED ).create() ); } else { ProxiedPlayer player = ProxyServer.getInstance().getPlayer( args[0] ); if ( player == null || player.getServer() == null ) { sender.sendMessage( new ComponentBuilder( "That user is not online" ).color( ChatColor.RED ).create() ); } else { sender.sendMessage( new ComponentBuilder( args[0] ).color( ChatColor.GREEN ).append( " is online at " ).append( player.getServer().getInfo().getName() ).create() ); } } } }
@Override public String getInternUUID(String player) { ProxiedPlayer proxiedPlayer = ProxyServer.getInstance().getPlayer(player); if (proxiedPlayer == null) { return null; } UUID uniqueId = proxiedPlayer.getUniqueId(); return uniqueId == null ? null : uniqueId.toString().replaceAll("-", ""); }
@Override public String getName(String uuid) { return ProxyServer.getInstance().getPlayer(UUID.fromString(uuid)).getName(); }
public long getLastOnline(final UUID uuid) { ProxiedPlayer player = plugin.getProxy().getPlayer(uuid); if (player != null) return 0; try { return lastOnlineCache.get(uuid, new Callable<Long>() { @Override public Long call() throws Exception { try (Jedis tmpRsc = plugin.getPool().getResource()) { String result = tmpRsc.hget("player:" + uuid, "online"); return result == null ? -1 : Long.valueOf(result); } } }); } catch (ExecutionException e) { plugin.getLogger().log(Level.SEVERE, "Unable to get last time online", e); throw new RuntimeException("Unable to get last time online for " + uuid, e); } }
public String getServer(final UUID uuid) { ProxiedPlayer player = plugin.getProxy().getPlayer(uuid); if (player != null) return player.getServer() != null ? player.getServer().getInfo().getName() : null; try { return serverCache.get(uuid, new Callable<String>() { @Override public String call() throws Exception { try (Jedis tmpRsc = plugin.getPool().getResource()) { return Objects.requireNonNull(tmpRsc.hget("player:" + uuid, "server"), "user not found"); } } }); } catch (ExecutionException | UncheckedExecutionException e) { if (e.getCause() instanceof NullPointerException && e.getCause().getMessage().equals("user not found")) return null; // HACK plugin.getLogger().log(Level.SEVERE, "Unable to get server", e); throw new RuntimeException("Unable to get server for " + uuid, e); } }
@Override public void sendMessage(UUID uuid, String message) { getProxy().getPlayer(uuid).sendMessage(TextComponent.fromLegacyText(message)); }
@Override public int getPlayerVersion(@NonNull UUID uuid) { if (!isPorted(uuid)) { ProxiedPlayer player = ProxyServer.getInstance().getPlayer(uuid); if (player != null) return player.getPendingConnection().getVersion(); return ProtocolRegistry.SERVER_PROTOCOL; } return getPortedPlayers().get(uuid).get(ProtocolInfo.class).getProtocolVersion(); }
@Override public void kickPlayer(String player, String reason) { if (Universal.get().useRedis()) { RedisBungee.getApi().sendChannelMessage("AdvancedBan", "kick " + player + " " + reason); } else { ProxyServer.getInstance().getPlayer(player).disconnect(reason); } }
@Override public void execute(CommandSender sender, String[] args) { if ( args.length < 1 ) { sender.sendMessage( ChatColor.RED + "Please follow this command by a user name" ); return; } ProxiedPlayer user = ProxyServer.getInstance().getPlayer( args[0] ); if ( user == null ) { sender.sendMessage( ChatColor.RED + "That user is not online" ); } else { sender.sendMessage( ChatColor.BLUE + "IP of " + args[0] + " is " + user.getAddress() ); } } }
@Override public boolean isOnline(String name) { try { if (Universal.get().useRedis()) { for (String str : RedisBungee.getApi().getHumanPlayersOnline()) { if (str.equalsIgnoreCase(name)) { return RedisBungee.getApi().getPlayerIp(RedisBungee.getApi().getUuidFromName(str)) != null; } } } return ProxyServer.getInstance().getPlayer(name).getAddress() != null; } catch (NullPointerException exc) { return false; } }
@Override public void execute(CommandSender sender, String[] args) { if ( args.length != 1 ) { sender.sendMessage( ChatColor.RED + "Please follow this command by a user name" ); } else { ProxiedPlayer player = ProxyServer.getInstance().getPlayer( args[0] ); if ( player == null || player.getServer() == null ) { sender.sendMessage( ChatColor.RED + "That user is not online" ); } else { sender.sendMessage( ChatColor.BLUE + args[0] + " is online at " + player.getServer().getInfo().getName() ); } } } }
public ServerInfo getFreeLobby(UUID uuid, boolean kicked) { ProxiedPlayer proxiedPlayer = ProxyServer.getInstance().getPlayer(uuid); ServerInfo notThis = null; if (proxiedPlayer != null && proxiedPlayer.getServer() != null) notThis = proxiedPlayer.getServer().getInfo(); ServerInfo serverInfo = searchFreeLobby(uuid, notThis); if (serverInfo == null) { return TimoCloudBungee.getInstance().getProxy().getServerInfo(TimoCloudBungee.getInstance().getFileManager().getConfig().getString("emergencyFallback")); } if (kicked) addToHistory(uuid, serverInfo.getName()); return serverInfo; }
@Override public void forward(Vote v) { ProxiedPlayer p = ProxyServer.getInstance().getPlayer(v.getUsername()); if (p != null && p.getServer() != null && serverFilter.isAllowed(p.getServer().getInfo().getName())) { if (forwardSpecific(new BungeeBackendServer(p.getServer().getInfo()), v)) { return; } } ServerInfo serverInfo = ProxyServer.getInstance().getServers().get(fallbackServer); // nowhere to fall back to, yet still not online. lets save this vote yet! if (serverInfo == null) attemptToAddToPlayerCache(v, v.getUsername()); else if (!forwardSpecific(new BungeeBackendServer(serverInfo), v)) attemptToAddToCache(v, fallbackServer); }