diff --git a/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/TransitionSessionHandler.java b/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/TransitionSessionHandler.java index 356825841..3cb811ba5 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/TransitionSessionHandler.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/TransitionSessionHandler.java @@ -51,6 +51,7 @@ public class TransitionSessionHandler implements MinecraftSessionHandler { private final VelocityServer server; private final VelocityServerConnection serverConn; private final CompletableFuture resultFuture; + private final BungeeCordMessageResponder bungeecordMessageResponder; /** * Creates the new transition handler. @@ -64,6 +65,8 @@ public class TransitionSessionHandler implements MinecraftSessionHandler { this.server = server; this.serverConn = serverConn; this.resultFuture = resultFuture; + this.bungeecordMessageResponder = new BungeeCordMessageResponder(server, + serverConn.getPlayer()); } @Override @@ -168,6 +171,10 @@ public class TransitionSessionHandler implements MinecraftSessionHandler { @Override public boolean handle(PluginMessage packet) { + if (bungeecordMessageResponder.process(packet)) { + return true; + } + if (PluginMessageUtil.isRegister(packet)) { serverConn.getPlayer().getKnownChannels().addAll(PluginMessageUtil.getChannels(packet)); } else if (PluginMessageUtil.isUnregister(packet)) {