From 056b8a7af7be09913c3fbb893c6299590c46706e Mon Sep 17 00:00:00 2001 From: Smart123s <28480228+Smart123s@users.noreply.github.com> Date: Sun, 15 Aug 2021 17:29:11 +0200 Subject: [PATCH] Recieve success message for Floodgate Floodgate players are offline players, so a special check needs to be done to save Floodgate players as if they were online players. --- .../bungee/listener/PluginMessageListener.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/bungee/src/main/java/com/github/games647/fastlogin/bungee/listener/PluginMessageListener.java b/bungee/src/main/java/com/github/games647/fastlogin/bungee/listener/PluginMessageListener.java index 3b2e8f0e..5099785c 100644 --- a/bungee/src/main/java/com/github/games647/fastlogin/bungee/listener/PluginMessageListener.java +++ b/bungee/src/main/java/com/github/games647/fastlogin/bungee/listener/PluginMessageListener.java @@ -36,6 +36,9 @@ import com.github.games647.fastlogin.core.shared.FastLoginCore; import com.google.common.io.ByteArrayDataInput; import com.google.common.io.ByteStreams; +import org.geysermc.floodgate.api.FloodgateApi; +import org.geysermc.floodgate.api.player.FloodgatePlayer; + import java.util.Arrays; import net.md_5.bungee.api.CommandSender; @@ -115,7 +118,13 @@ public class PluginMessageListener implements Listener { } private void onSuccessMessage(ProxiedPlayer forPlayer) { - if (forPlayer.getPendingConnection().isOnlineMode()) { + //check if player is using Floodgate + FloodgatePlayer floodgatePlayer = null; + if (plugin.isPluginInstalled("floodgate")) { + floodgatePlayer = FloodgateApi.getInstance().getPlayer(forPlayer.getUniqueId()); + } + + if (forPlayer.getPendingConnection().isOnlineMode() || floodgatePlayer != null){ //bukkit module successfully received and force logged in the user //update only on success to prevent corrupt data BungeeLoginSession loginSession = plugin.getSession().get(forPlayer.getPendingConnection());