diff --git a/build.gradle b/build.gradle index 9dccf1a..8f21c4f 100644 --- a/build.gradle +++ b/build.gradle @@ -36,7 +36,7 @@ configurations { } dependencies { - shade ('us.myles:viaversion:1.4.1') { transitive = false } + shade ('us.myles:viaversion:1.4.2-SNAPSHOT') { transitive = false } implementation 'org.dimdev:mixin:0.7.11-SNAPSHOT' compile 'org.dimdev.rift:Rift:1.0.1:dev' } diff --git a/src/main/java/com/github/creeper123123321/viarift/handler/VRInHandler.java b/src/main/java/com/github/creeper123123321/viarift/handler/VRInHandler.java index e481eeb..f0c0f0e 100644 --- a/src/main/java/com/github/creeper123123321/viarift/handler/VRInHandler.java +++ b/src/main/java/com/github/creeper123123321/viarift/handler/VRInHandler.java @@ -37,17 +37,19 @@ public class VRInHandler extends ByteToMessageDecoder { // Transform ByteBuf newPacket = msg.alloc().buffer(); - try { - PacketWrapper wrapper = new PacketWrapper(id, msg, user); - ProtocolInfo protInfo = user.get(ProtocolInfo.class); - protInfo.getPipeline().transform(Direction.OUTGOING, protInfo.getState(), wrapper); - wrapper.writeToBuffer(newPacket); - msg = newPacket; - } catch (Exception e) { - if (!(e instanceof CancelException)) - e.printStackTrace(); - msg.clear(); - throw e; + if (id != PacketWrapper.PASSTHROUGH_ID) { + try { + PacketWrapper wrapper = new PacketWrapper(id, msg, user); + ProtocolInfo protInfo = user.get(ProtocolInfo.class); + protInfo.getPipeline().transform(Direction.OUTGOING, protInfo.getState(), wrapper); + wrapper.writeToBuffer(newPacket); + msg = newPacket; + } catch (Exception e) { + if (!(e instanceof CancelException)) + e.printStackTrace(); + msg.clear(); + throw e; + } } } diff --git a/src/main/java/com/github/creeper123123321/viarift/platform/VRUserConnection.java b/src/main/java/com/github/creeper123123321/viarift/platform/VRUserConnection.java index f5bf0f8..5210783 100644 --- a/src/main/java/com/github/creeper123123321/viarift/platform/VRUserConnection.java +++ b/src/main/java/com/github/creeper123123321/viarift/platform/VRUserConnection.java @@ -7,6 +7,7 @@ import io.netty.channel.socket.SocketChannel; import us.myles.ViaVersion.api.PacketWrapper; import us.myles.ViaVersion.api.data.UserConnection; import us.myles.ViaVersion.api.type.Type; +import us.myles.ViaVersion.util.PipelineUtil; public class VRUserConnection extends UserConnection { @@ -28,14 +29,14 @@ public class VRUserConnection extends UserConnection { final Channel channel = this.getChannel(); if (currentThread) { try { - channel.pipeline().context("decoder").fireChannelRead(copy); + PipelineUtil.getContextBefore("decoder", channel.pipeline()).fireChannelRead(copy); } catch (Exception e) { e.printStackTrace(); } } else { channel.eventLoop().submit(() -> { try { - channel.pipeline().context("decoder").fireChannelRead(copy); + PipelineUtil.getContextBefore("decoder", channel.pipeline()).fireChannelRead(copy); } catch (Exception e) { e.printStackTrace(); } @@ -55,7 +56,7 @@ public class VRUserConnection extends UserConnection { packet.release(); final Channel channel = this.getChannel(); try { - channel.pipeline().context("decoder").fireChannelRead(copy); + PipelineUtil.getContextBefore("decoder", channel.pipeline()).fireChannelRead(copy); } catch (Exception e) { e.printStackTrace(); }