@Subscribe public void onPluginMessage(PluginMessageEvent e) { if (e.getIdentifier().equals(velocityChannelId)) { e.setResult(PluginMessageEvent.ForwardResult.handled()); } } }
@Override public boolean handle(PluginMessage packet) { if (!canForwardPluginMessage(packet)) { return true; } if (PluginMessageUtil.isMcBrand(packet)) { PluginMessage rewritten = PluginMessageUtil.rewriteMinecraftBrand(packet, server.getVersion()); serverConn.getPlayer().getMinecraftConnection().write(rewritten); return true; } if (serverConn.getPhase().handle(serverConn, serverConn.getPlayer(), packet)) { // Handled. return true; } ChannelIdentifier id = server.getChannelRegistrar().getFromId(packet.getChannel()); if (id == null) { return false; } MinecraftConnection clientConn = serverConn.getPlayer().getMinecraftConnection(); PluginMessageEvent event = new PluginMessageEvent(serverConn, serverConn.getPlayer(), id, packet.getData()); server.getEventManager().fire(event) .thenAcceptAsync(pme -> { if (pme.getResult().isAllowed() && !clientConn.isClosed()) { clientConn.write(packet); } }, clientConn.eventLoop()); return true; }
backendConn.write(packet); } else { PluginMessageEvent event = new PluginMessageEvent(player, serverConn, id, packet.getData()); server.getEventManager().fire(event).thenAcceptAsync(pme -> backendConn.write(packet),
@Subscribe public void onPluginMessage(PluginMessageEvent e) { if (e.getIdentifier().equals(velocityChannelId)) { e.setResult(PluginMessageEvent.ForwardResult.handled()); } } }