From dfabbcf4ad20d721e3a8fda344981ae9131fd861 Mon Sep 17 00:00:00 2001 From: ME1312 Date: Tue, 15 Jun 2021 05:15:18 -0400 Subject: [PATCH] Add missing static methods to platform-specific api --- .../SubServers/Bungee/Host/RemotePlayer.java | 121 ++++++++++++++++-- .../SubServers/Sync/Server/CachedPlayer.java | 50 ++++++++ 2 files changed, 159 insertions(+), 12 deletions(-) diff --git a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Host/RemotePlayer.java b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Host/RemotePlayer.java index 81029dd1..de51a565 100644 --- a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Host/RemotePlayer.java +++ b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Host/RemotePlayer.java @@ -136,6 +136,22 @@ public class RemotePlayer implements net.ME1312.SubServers.Bungee.Library.Compat return (server == null)? null : server.getName(); } + @Override + public boolean equals(Object obj) { + return obj instanceof RemotePlayer && getUniqueId().equals(((RemotePlayer) obj).getUniqueId()); + } + + @Override + public ObjectMap forSubData() { + ObjectMap pinfo = new ObjectMap(); + pinfo.set("name", getName()); + pinfo.set("id", getUniqueId()); + pinfo.set("address", getAddress().getAddress().getHostAddress() + ':' + getAddress().getPort()); + if (getServer() != null) pinfo.set("server", getServer().getName()); + if (getProxy() != null) pinfo.set("proxy", getProxy().getName()); + return pinfo; + } + static { // These overrides provide for the static methods in BungeeCommon new RPSI() { @@ -197,19 +213,100 @@ public class RemotePlayer implements net.ME1312.SubServers.Bungee.Library.Compat }; } - @Override - public boolean equals(Object obj) { - return obj instanceof RemotePlayer && getUniqueId().equals(((RemotePlayer) obj).getUniqueId()); + // The following methods all redirect to their BungeeCommon counterparts + public static void broadcastMessage(String... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages); } - @Override - public ObjectMap forSubData() { - ObjectMap pinfo = new ObjectMap(); - pinfo.set("name", getName()); - pinfo.set("id", getUniqueId()); - pinfo.set("address", getAddress().getAddress().getHostAddress() + ':' + getAddress().getPort()); - if (getServer() != null) pinfo.set("server", getServer().getName()); - if (getProxy() != null) pinfo.set("proxy", getProxy().getName()); - return pinfo; + public static void broadcastMessage(String message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message, response); + } + + public static void broadcastMessage(String[] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages, response); + } + + public static void sendMessage(UUID[] players, String... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages); + } + + public static void sendMessage(UUID[] players, String message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message, response); + } + + public static void sendMessage(UUID[] players, String[] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages, response); + } + + public static void broadcastMessage(BaseComponent... message) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message); + } + + public static void broadcastMessage(BaseComponent message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message, response); + } + + public static void broadcastMessage(BaseComponent[] message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message, response); + } + + public static void broadcastMessage(BaseComponent[]... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages); + } + + public static void broadcastMessage(BaseComponent[][] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages, response); + } + + public static void sendMessage(UUID[] players, BaseComponent... message) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message); + } + + public static void sendMessage(UUID[] players, BaseComponent message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message, response); + } + + public static void sendMessage(UUID[] players, BaseComponent[] message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message, response); + } + + public static void sendMessage(UUID[] players, BaseComponent[]... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages); + } + + public static void sendMessage(UUID[] players, BaseComponent[][] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages, response); + } + + public static void transfer(UUID[] players, String server) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server); + } + + public static void transfer(UUID[] players, String server, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server, response); + } + + public static void transfer(UUID[] players, ServerInfo server) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server); + } + + public static void transfer(UUID[] players, ServerInfo server, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server, response); + } + + public static void disconnect(UUID... players) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.disconnect(players); + } + + public static void disconnect(UUID[] players, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.disconnect(players, response); + } + + public static void disconnect(UUID[] players, String reason) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.disconnect(players, reason); + } + + public static void disconnect(UUID[] players, String reason, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.disconnect(players, reason, response); } } diff --git a/SubServers.Sync/src/net/ME1312/SubServers/Sync/Server/CachedPlayer.java b/SubServers.Sync/src/net/ME1312/SubServers/Sync/Server/CachedPlayer.java index 62e1d3d9..cb0ae271 100644 --- a/SubServers.Sync/src/net/ME1312/SubServers/Sync/Server/CachedPlayer.java +++ b/SubServers.Sync/src/net/ME1312/SubServers/Sync/Server/CachedPlayer.java @@ -212,4 +212,54 @@ public class CachedPlayer extends RemotePlayer implements net.ME1312.SubServers. } }; } + + // The following methods all redirect to their BungeeCommon counterparts + public static void broadcastMessage(BaseComponent... message) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message); + } + + public static void broadcastMessage(BaseComponent message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message, response); + } + + public static void broadcastMessage(BaseComponent[] message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(message, response); + } + + public static void broadcastMessage(BaseComponent[]... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages); + } + + public static void broadcastMessage(BaseComponent[][] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.broadcastMessage(messages, response); + } + + public static void sendMessage(UUID[] players, BaseComponent... message) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message); + } + + public static void sendMessage(UUID[] players, BaseComponent message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message, response); + } + + public static void sendMessage(UUID[] players, BaseComponent[] message, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, message, response); + } + + public static void sendMessage(UUID[] players, BaseComponent[]... messages) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages); + } + + public static void sendMessage(UUID[] players, BaseComponent[][] messages, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.sendMessage(players, messages, response); + } + + public static void transfer(UUID[] players, ServerInfo server) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server); + } + + public static void transfer(UUID[] players, ServerInfo server, Callback response) { + net.ME1312.SubServers.Bungee.Library.Compatibility.RemotePlayer.transfer(players, server, response); + } + }