461 lines
12 KiB
Java
461 lines
12 KiB
Java
package net.ME1312.SubServers.Bungee.Library.Compatibility;
|
|
|
|
import net.md_5.bungee.api.chat.BaseComponent;
|
|
import net.md_5.bungee.api.config.ServerInfo;
|
|
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
|
|
|
import java.net.InetSocketAddress;
|
|
import java.util.UUID;
|
|
import java.util.function.IntConsumer;
|
|
|
|
import static net.ME1312.SubServers.Bungee.Library.Compatibility.RPSI.instance;
|
|
|
|
/**
|
|
* RemotePlayer Layout Class
|
|
*/
|
|
public interface RemotePlayer {
|
|
|
|
/**
|
|
* Get Local Player
|
|
*
|
|
* @return Local Player (or null when not local)
|
|
*/
|
|
ProxiedPlayer get();
|
|
|
|
/**
|
|
* Get the UUID of this player.
|
|
*
|
|
* @return the UUID
|
|
*/
|
|
UUID getUniqueId();
|
|
|
|
/**
|
|
* Get the unique name of this player.
|
|
*
|
|
* @return the player's username
|
|
*/
|
|
String getName();
|
|
|
|
/**
|
|
* Gets the remote address of this connection.
|
|
*
|
|
* @return the remote address
|
|
*/
|
|
InetSocketAddress getAddress();
|
|
|
|
/**
|
|
* Gets the name of the proxy this player is connected to.
|
|
*
|
|
* @return the name of the proxy this player is connected to
|
|
*/
|
|
String getProxyName();
|
|
|
|
/**
|
|
* Gets the name of the server this player is connected to.
|
|
*
|
|
* @return the name of the server this player is connected to
|
|
*/
|
|
String getServerName();
|
|
|
|
/**
|
|
* Gets the server this player is connected to.
|
|
*
|
|
* @return the server this player is connected to
|
|
*/
|
|
ServerInfo getServer();
|
|
|
|
/**
|
|
* Sends messages to all players
|
|
*
|
|
* @param messages Messages to send
|
|
*/
|
|
static void broadcastMessage(String... messages) {
|
|
broadcastMessage(messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to all players
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void broadcastMessage(String message, IntConsumer response) {
|
|
broadcastMessage(new String[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to all players
|
|
*
|
|
* @param messages Messages to send
|
|
* @param response Success Status
|
|
*/
|
|
static void broadcastMessage(String[] messages, IntConsumer response) {
|
|
sendMessage(null, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to this player
|
|
*
|
|
* @param messages Messages to send
|
|
*/
|
|
default void sendMessage(String... messages) {
|
|
sendMessage(messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to this player
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
default void sendMessage(String message, IntConsumer response) {
|
|
sendMessage(new String[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to this player
|
|
*
|
|
* @param messages Messages to send
|
|
* @param response Success Status
|
|
*/
|
|
default void sendMessage(String[] messages, IntConsumer response) {
|
|
sendMessage(new UUID[]{ getUniqueId() }, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param messages Messages to send
|
|
*/
|
|
static void sendMessage(UUID[] players, String... messages) {
|
|
sendMessage(players, messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void sendMessage(UUID[] players, String message, IntConsumer response) {
|
|
sendMessage(players, new String[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param messages Messages to send
|
|
* @param response Success Status
|
|
*/
|
|
static void sendMessage(UUID[] players, String[] messages, IntConsumer response) {
|
|
instance.sendMessage(players, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a message to all players
|
|
*
|
|
* @param message Message to send
|
|
*/
|
|
static void broadcastMessage(BaseComponent... message) {
|
|
broadcastMessage(message, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to all players
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void broadcastMessage(BaseComponent message, IntConsumer response) {
|
|
broadcastMessage(new BaseComponent[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a messages to all players
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void broadcastMessage(BaseComponent[] message, IntConsumer response) {
|
|
broadcastMessage(new BaseComponent[][]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to all players
|
|
*
|
|
* @param messages Messages to send
|
|
*/
|
|
static void broadcastMessage(BaseComponent[]... messages) {
|
|
broadcastMessage(messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends messages to all players
|
|
*
|
|
* @param messages Messages to send
|
|
* @param response Success Status
|
|
*/
|
|
static void broadcastMessage(BaseComponent[][] messages, IntConsumer response) {
|
|
sendMessage(null, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a message to this player
|
|
*
|
|
* @param message Message to send
|
|
*/
|
|
default void sendMessage(BaseComponent... message) {
|
|
sendMessage(message, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to this player
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
default void sendMessage(BaseComponent message, IntConsumer response) {
|
|
sendMessage(new BaseComponent[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a message to this player
|
|
*
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
default void sendMessage(BaseComponent[] message, IntConsumer response) {
|
|
sendMessage(new BaseComponent[][]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to this player
|
|
*
|
|
* @param messages Messages to send
|
|
*/
|
|
default void sendMessage(BaseComponent[]... messages) {
|
|
sendMessage(messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends messages to this player
|
|
*
|
|
* @param messages Messages to send
|
|
* @param response Success Status
|
|
*/
|
|
default void sendMessage(BaseComponent[][] messages, IntConsumer response) {
|
|
sendMessage(new UUID[]{ getUniqueId() }, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a message to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param message Message to send
|
|
*/
|
|
static void sendMessage(UUID[] players, BaseComponent... message) {
|
|
sendMessage(players, message, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends a message to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void sendMessage(UUID[] players, BaseComponent message, IntConsumer response) {
|
|
sendMessage(players, new BaseComponent[]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends a message to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param message Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void sendMessage(UUID[] players, BaseComponent[] message, IntConsumer response) {
|
|
sendMessage(players, new BaseComponent[][]{ message }, response);
|
|
}
|
|
|
|
/**
|
|
* Sends messages to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param messages Messages to send
|
|
*/
|
|
static void sendMessage(UUID[] players, BaseComponent[]... messages) {
|
|
sendMessage(players, messages, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Sends messages to these players
|
|
*
|
|
* @param players Players to select
|
|
* @param messages Message to send
|
|
* @param response Success Status
|
|
*/
|
|
static void sendMessage(UUID[] players, BaseComponent[][] messages, IntConsumer response) {
|
|
instance.sendMessage(players, messages, response);
|
|
}
|
|
|
|
/**
|
|
* Transfers this player to another server
|
|
*
|
|
* @param server Target server
|
|
*/
|
|
default void transfer(String server) {
|
|
transfer(server, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Transfers this player to another server
|
|
*
|
|
* @param server Target server
|
|
* @param response Success status
|
|
*/
|
|
default void transfer(String server, IntConsumer response) {
|
|
transfer(new UUID[]{ getUniqueId() }, server, response);
|
|
}
|
|
|
|
/**
|
|
* Transfers these players to another server
|
|
*
|
|
* @param players Players to select
|
|
* @param server Target server
|
|
*/
|
|
static void transfer(UUID[] players, String server) {
|
|
transfer(players, server, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Transfers these players to another server
|
|
*
|
|
* @param players Players to select
|
|
* @param server Target server
|
|
* @param response Success status
|
|
*/
|
|
static void transfer(UUID[] players, String server, IntConsumer response) {
|
|
instance.transfer(players, server, response);
|
|
}
|
|
|
|
/**
|
|
* Transfers this player to another server
|
|
*
|
|
* @param server Target server
|
|
*/
|
|
default void transfer(ServerInfo server) {
|
|
transfer(server, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Transfers this player to another server
|
|
*
|
|
* @param server Target server
|
|
* @param response Success status
|
|
*/
|
|
default void transfer(ServerInfo server, IntConsumer response) {
|
|
transfer(new UUID[]{ getUniqueId() }, server, response);
|
|
}
|
|
|
|
/**
|
|
* Transfers these players to another server
|
|
*
|
|
* @param players Players to select
|
|
* @param server Target server
|
|
*/
|
|
static void transfer(UUID[] players, ServerInfo server) {
|
|
transfer(players, server, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Transfers these players to another server
|
|
*
|
|
* @param players Players to select
|
|
* @param server Target server
|
|
* @param response Success status
|
|
*/
|
|
static void transfer(UUID[] players, ServerInfo server, IntConsumer response) {
|
|
instance.transfer(players, server.getName(), response);
|
|
}
|
|
|
|
/**
|
|
* Disconnects this player from the network
|
|
*/
|
|
default void disconnect() {
|
|
disconnect((String) null);
|
|
}
|
|
|
|
/**
|
|
* Disconnects this player from the network
|
|
*
|
|
* @param response Success status
|
|
*/
|
|
default void disconnect(IntConsumer response) {
|
|
disconnect((String) null, response);
|
|
}
|
|
|
|
/**
|
|
* Disconnects this player from the network
|
|
*
|
|
* @param reason Disconnect Reason
|
|
*/
|
|
default void disconnect(String reason) {
|
|
disconnect(reason, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Disconnects this player from the network
|
|
*
|
|
* @param reason Disconnect Reason
|
|
* @param response Success status
|
|
*/
|
|
default void disconnect(String reason, IntConsumer response) {
|
|
disconnect(new UUID[]{ getUniqueId() }, reason, response);
|
|
}
|
|
|
|
/**
|
|
* Disconnects these players from the network
|
|
*
|
|
* @param players Players to select
|
|
*/
|
|
static void disconnect(UUID... players) {
|
|
disconnect(players, (String) null);
|
|
}
|
|
|
|
/**
|
|
* Disconnects these players from the network
|
|
*
|
|
* @param players Players to select
|
|
* @param response Success status
|
|
*/
|
|
static void disconnect(UUID[] players, IntConsumer response) {
|
|
disconnect(players, null, response);
|
|
}
|
|
|
|
/**
|
|
* Disconnects these players from the network
|
|
*
|
|
* @param players Players to select
|
|
* @param reason Disconnect Reason
|
|
*/
|
|
static void disconnect(UUID[] players, String reason) {
|
|
disconnect(players, reason, i -> {});
|
|
}
|
|
|
|
/**
|
|
* Disconnects these players from the network
|
|
*
|
|
* @param players Players to select
|
|
* @param reason Disconnect Reason
|
|
* @param response Success status
|
|
*/
|
|
static void disconnect(UUID[] players, String reason, IntConsumer response) {
|
|
instance.disconnect(players, reason, response);
|
|
}
|
|
}
|