From 222e90a9f0033b3916719ec746b3e231b63a2c4d Mon Sep 17 00:00:00 2001 From: Andrew Steinborn Date: Fri, 5 Oct 2018 19:04:10 -0400 Subject: [PATCH] Unbreak Forge logic. --- .../backend/BackendPlaySessionHandler.java | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java b/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java index 1e4d7a0ca..4e48f7e6c 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java @@ -94,22 +94,22 @@ public class BackendPlaySessionHandler implements MinecraftSessionHandler { serverConn.getPlayer().sendLegacyForgeHandshakeResetPacket(); } - // Always forward these messages during login + // Always forward these messages during login. Don't pass it onto the handleGeneric below. return false; } ChannelIdentifier id = server.getChannelRegistrar().getFromId(packet.getChannel()); if (id == null) { - serverConn.getPlayer().getConnection().write(packet); - } else { - PluginMessageEvent event = new PluginMessageEvent(serverConn, serverConn.getPlayer(), id, packet.getData()); - server.getEventManager().fire(event) - .thenAcceptAsync(pme -> { - if (pme.getResult().isAllowed()) { - serverConn.getPlayer().getConnection().write(packet); - } - }, serverConn.getConnection().eventLoop()); + return false; } + + PluginMessageEvent event = new PluginMessageEvent(serverConn, serverConn.getPlayer(), id, packet.getData()); + server.getEventManager().fire(event) + .thenAcceptAsync(pme -> { + if (pme.getResult().isAllowed()) { + serverConn.getPlayer().getConnection().write(packet); + } + }, serverConn.getConnection().eventLoop()); return true; } @@ -134,10 +134,8 @@ public class BackendPlaySessionHandler implements MinecraftSessionHandler { return; } - if (serverConn.hasCompletedJoin()) { - // Just forward the packet on. We don't have anything to handle at this time. - serverConn.getPlayer().getConnection().write(packet); - } + // Just forward the packet on. We don't have anything to handle at this time. + serverConn.getPlayer().getConnection().write(packet); } @Override @@ -149,9 +147,7 @@ public class BackendPlaySessionHandler implements MinecraftSessionHandler { return; } - if (serverConn.hasCompletedJoin()) { - serverConn.getPlayer().getConnection().write(buf.retain()); - } + serverConn.getPlayer().getConnection().write(buf.retain()); } @Override