diff --git a/protocol/src/main/java/mc/protocol/io/codec/ProtocolEncoder.java b/protocol/src/main/java/mc/protocol/io/codec/ProtocolEncoder.java index 146605a..25d0ed4 100644 --- a/protocol/src/main/java/mc/protocol/io/codec/ProtocolEncoder.java +++ b/protocol/src/main/java/mc/protocol/io/codec/ProtocolEncoder.java @@ -10,15 +10,17 @@ import mc.protocol.State; import mc.protocol.io.NetByteBuf; import mc.protocol.packets.ServerSidePacket; -import java.util.Objects; - @Slf4j public class ProtocolEncoder extends MessageToByteEncoder { @Override protected void encode(ChannelHandlerContext ctx, ServerSidePacket packet, ByteBuf out) { State state = ctx.channel().attr(NetworkAttributes.STATE).get(); - int packetId = Objects.requireNonNull(state.getServerSidePacketId(packet.getClass())); + Integer packetId = state.getServerSidePacketId(packet.getClass()); + if (packetId == null) { + log.error("Unknown send packet: State {} ; Class {}", state, packet.getClass()); + return; + } log.debug("OUT: {}:{}", state, packet);