allow getting AdaptedPlayer via UUID
This commit is contained in:
@@ -6,6 +6,7 @@ import us.ajg0702.queue.api.players.AdaptedPlayer;
|
||||
import us.ajg0702.queue.api.server.AdaptedServer;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public interface PlatformMethods {
|
||||
|
||||
@@ -29,10 +30,31 @@ public interface PlatformMethods {
|
||||
|
||||
List<AdaptedPlayer> getOnlinePlayers();
|
||||
List<String> getPlayerNames(boolean lowercase);
|
||||
|
||||
/**
|
||||
* Gets an online player by their name
|
||||
* @param name The players name
|
||||
* @return The AdaptedPlayer for this player
|
||||
*/
|
||||
AdaptedPlayer getPlayer(String name);
|
||||
|
||||
/**
|
||||
* Gets an online player by their UUID
|
||||
* @param uuid their UUID
|
||||
* @return the AdaptedPlayer for this player
|
||||
*/
|
||||
AdaptedPlayer getPlayer(UUID uuid);
|
||||
|
||||
/**
|
||||
* Gets a list of the server names
|
||||
* @return A list of the server names
|
||||
*/
|
||||
List<String> getServerNames();
|
||||
|
||||
/**
|
||||
* Gets the name of the implementation. E.g. bungeecord, velocity
|
||||
* @return the name of the implementation
|
||||
*/
|
||||
String getImplementationName();
|
||||
|
||||
List<IBaseCommand> getCommands();
|
||||
@@ -44,6 +66,11 @@ public interface PlatformMethods {
|
||||
*/
|
||||
boolean hasPlugin(String pluginName);
|
||||
|
||||
/**
|
||||
* Gets an AdaptedServer from the server name
|
||||
* @param name The name of the server
|
||||
* @return The AdaptedServer
|
||||
*/
|
||||
AdaptedServer getServer(String name);
|
||||
|
||||
List<AdaptedServer> getServers();
|
||||
|
||||
+8
-4
@@ -16,10 +16,7 @@ import us.ajg0702.queue.commands.commands.PlayerSender;
|
||||
import us.ajg0702.queue.platforms.bungeecord.players.BungeePlayer;
|
||||
import us.ajg0702.queue.platforms.bungeecord.server.BungeeServer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.*;
|
||||
|
||||
public class BungeeMethods implements PlatformMethods {
|
||||
|
||||
@@ -87,6 +84,13 @@ public class BungeeMethods implements PlatformMethods {
|
||||
return new BungeePlayer(player);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AdaptedPlayer getPlayer(UUID uuid) {
|
||||
ProxiedPlayer player = proxyServer.getPlayer(uuid);
|
||||
if(player == null) return null;
|
||||
return new BungeePlayer(player);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getServerNames() {
|
||||
return new ArrayList<>(proxyServer.getServers().keySet());
|
||||
|
||||
+10
-5
@@ -19,10 +19,7 @@ import us.ajg0702.queue.commands.commands.PlayerSender;
|
||||
import us.ajg0702.queue.platforms.velocity.players.VelocityPlayer;
|
||||
import us.ajg0702.queue.platforms.velocity.server.VelocityServer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
|
||||
@SuppressWarnings("OptionalIsPresent")
|
||||
public class VelocityMethods implements PlatformMethods {
|
||||
@@ -96,7 +93,15 @@ public class VelocityMethods implements PlatformMethods {
|
||||
public AdaptedPlayer getPlayer(String name) {
|
||||
Optional<Player> player = proxyServer.getPlayer(name);
|
||||
if(!player.isPresent()) {
|
||||
System.out.println("Player "+name+" not found");
|
||||
return null;
|
||||
}
|
||||
return new VelocityPlayer(player.get());
|
||||
}
|
||||
|
||||
@Override
|
||||
public AdaptedPlayer getPlayer(UUID uuid) {
|
||||
Optional<Player> player = proxyServer.getPlayer(uuid);
|
||||
if(!player.isPresent()) {
|
||||
return null;
|
||||
}
|
||||
return new VelocityPlayer(player.get());
|
||||
|
||||
Reference in New Issue
Block a user