From 8346e5a2b5100432dbeb91e2c86ee5270f0e4090 Mon Sep 17 00:00:00 2001 From: gtpal Date: Sat, 18 Dec 2021 14:05:15 -0500 Subject: [PATCH] Added sendBungeeMessage, and sendToServer in Player Object as to simplify sending players to other bungee servers --- .classpath | 32 +++++++++++++++++++ .project | 23 +++++++++++++ .settings/org.eclipse.core.resources.prefs | 4 +++ .settings/org.eclipse.jdt.core.prefs | 8 +++++ .settings/org.eclipse.m2e.core.prefs | 4 +++ .../java/com/loohp/limbo/player/Player.java | 18 +++++++++++ 6 files changed, 89 insertions(+) create mode 100644 .classpath create mode 100644 .project create mode 100644 .settings/org.eclipse.core.resources.prefs create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 .settings/org.eclipse.m2e.core.prefs diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..a5d9509 --- /dev/null +++ b/.classpath @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..0446c9d --- /dev/null +++ b/.project @@ -0,0 +1,23 @@ + + + Limbo + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..82e28d1 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=ISO-8859-1 +encoding//src/main/resources=UTF-8 +encoding/=UTF-8 diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..2f5cc74 --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/src/main/java/com/loohp/limbo/player/Player.java b/src/main/java/com/loohp/limbo/player/Player.java index 5b76223..b277133 100644 --- a/src/main/java/com/loohp/limbo/player/Player.java +++ b/src/main/java/com/loohp/limbo/player/Player.java @@ -3,6 +3,8 @@ package com.loohp.limbo.player; import java.io.IOException; import java.util.UUID; +import com.google.common.io.ByteArrayDataOutput; +import com.google.common.io.ByteStreams; import com.loohp.limbo.Limbo; import com.loohp.limbo.commands.CommandSender; import com.loohp.limbo.entity.DataWatcher; @@ -18,10 +20,12 @@ import com.loohp.limbo.server.packets.PacketPlayOutChat; import com.loohp.limbo.server.packets.PacketPlayOutGameState; import com.loohp.limbo.server.packets.PacketPlayOutHeldItemChange; import com.loohp.limbo.server.packets.PacketPlayOutPlayerListHeaderFooter; +import com.loohp.limbo.server.packets.PacketPlayOutPluginMessaging; import com.loohp.limbo.server.packets.PacketPlayOutPositionAndLook; import com.loohp.limbo.server.packets.PacketPlayOutResourcePackSend; import com.loohp.limbo.server.packets.PacketPlayOutRespawn; import com.loohp.limbo.utils.GameMode; +import com.loohp.limbo.utils.NamespacedKey; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.chat.BaseComponent; @@ -307,5 +311,19 @@ public class Player extends LivingEntity implements CommandSender { public void setPlayerListHeaderFooter(String header, String footer) { setPlayerListHeaderFooter(header == null ? EMPTY_CHAT_COMPONENT : new BaseComponent[] {new TextComponent(header)}, footer == null ? EMPTY_CHAT_COMPONENT : new BaseComponent[] {new TextComponent(footer)}); } + + + public void sendBungeeMessage(String subChannel, String argument) { + ByteArrayDataOutput out = ByteStreams.newDataOutput(); + out.writeUTF(subChannel); + out.writeUTF(argument); + PacketPlayOutPluginMessaging packet = new PacketPlayOutPluginMessaging(new NamespacedKey("bungeecord", "main"), out.toByteArray()); + try {clientConnection.sendPacket(packet); + } catch (IOException e) {e.printStackTrace();} + } + + public void sendToServer(String server) { + sendBungeeMessage("Connect", server); + } }