diff --git a/src/main/java/org/cobalt/mixin/network/PacketEvent_ConnectionMixin.java b/src/main/java/org/cobalt/mixin/network/PacketEvent_ConnectionMixin.java index 550f234..c77027e 100644 --- a/src/main/java/org/cobalt/mixin/network/PacketEvent_ConnectionMixin.java +++ b/src/main/java/org/cobalt/mixin/network/PacketEvent_ConnectionMixin.java @@ -24,17 +24,18 @@ private static void genericsFtw(Packet packet, Pac @Inject(method = "genericsFtw", at = @At("HEAD"), cancellable = true) private static void onPacketReceived(Packet packet, PacketListener listener, CallbackInfo ci) { - if (packet instanceof ClientboundBundlePacket bundlePacket) { - ci.cancel(); - - for (Packet subPacket : bundlePacket.subPackets()) { - genericsFtw(subPacket, listener); - } + if (packet instanceof ClientboundBundlePacket) { return; } - new PacketEvent.Incoming(packet).post(); + PacketEvent.Incoming event = new PacketEvent.Incoming(packet); + event.post(); + + if (event.isCancelled()) { + ci.cancel(); + return; + } if (packet instanceof ClientboundSystemChatPacket) { new ChatEvent.Receive(packet).post();