PacketDispatcher.java 文件源码

java
阅读 27 收藏 0 点赞 0 评论 0

项目:SasaLib 作者:
@Override
protected void decode(ChannelHandlerContext ctx, FMLProxyPacket msg, List<Object> out) throws Exception
{
    ByteBuf buf = msg.payload();
    int packetId = buf.readByte();
    Class pktCls = packets.get(packetId);
    SasaPacketBase pkt = (SasaPacketBase)pktCls.newInstance();
    pkt.fromByteBuf(ctx, buf);
    if(FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT)
    {
        pkt.receiveClient(getClientPlayer());
    }
    else if(FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER)
    {
        INetHandler localINetHandler = (INetHandler)ctx.channel().attr(NetworkRegistry.NET_HANDLER).get();
        EntityPlayer ep = ((NetHandlerPlayServer)localINetHandler).playerEntity;
        pkt.receiveServer(ep);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号