[1.7.10] - Крашится сервер

Проблема в PacketHandler'e. Где-то там используется клиентский класс. Если не сможешь разобраться сам, то давай его сюда, причем целиком.
 
NetworkManager:
Код:
public class NetworkManager{

    private FMLEventChannel channel;
    private String channelName;
    private IPacketHandler packetHandler;
    
    public NetworkManager(String name, IPacketHandler pktHandler){
        channelName = name;
        channel = NetworkRegistry.INSTANCE.newEventDrivenChannel(channelName);
        channel.register(this);
        packetHandler = pktHandler;
    }
    
    public static NetworkManager registerPacketHandler(String name, IPacketHandler packetHandler){
        return new NetworkManager(name, packetHandler);
    }
    
    @SubscribeEvent
    public void onServerPacket(ServerCustomPacketEvent e){
        EntityPlayerMP player = ((NetHandlerPlayServer)e.handler).playerEntity;
        ByteBuf buf = e.packet.payload();
        packetHandler.handleServerSide(buf, player.worldObj, player);
    }
    
    @SubscribeEvent
    public void onClientPacket(ClientCustomPacketEvent event){
        EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
        ByteBuf buf = event.packet.payload();
        packetHandler.handleClientSide(buf, player.worldObj, player);
    }
    
    public void sendToServer(FMLProxyPacket packet){
        channel.sendToServer(packet);
    }
 
    public void sendToAll(FMLProxyPacket packet){
        channel.sendToAll(packet);
    }
 
    public void sendTo(FMLProxyPacket packet, EntityPlayerMP player){
        channel.sendTo(packet, player);
    }
 
    public void sendToAllAround(FMLProxyPacket packet, double x, double y, double z, double range, int dim){
        channel.sendToAllAround(packet, new TargetPoint(dim, x, y, z, range));
    }
 
    public void sendToDimension(FMLProxyPacket packet, int id){
        channel.sendToDimension(packet, id);
    }
    
    public FMLProxyPacket createPacket(Object... data){
        return createPacket(Unpooled.buffer(32), data);
    }
    
    public FMLProxyPacket createPacket(ByteBuf buf, Object... data){
        for(Object obj : data){
            if(obj instanceof Byte){
                buf.writeByte((Byte)obj);
            }
            if(obj instanceof Short){
                buf.writeShort((Short)obj);
            }
            if(obj instanceof Integer){
                buf.writeInt((Integer)obj);
            }
            if(obj instanceof Float){
                buf.writeFloat((Float)obj);
            }
            if(obj instanceof Double){
                buf.writeDouble((Double)obj);
            }
            if(obj instanceof Long){
                buf.writeLong((Long)obj);
            }
            if(obj instanceof Character){
                buf.writeChar((Character)obj);
            }
            if(obj instanceof String){
                ByteBufUtils.writeUTF8String(buf, (String)obj);
            }
            if(obj instanceof ItemStack){
                ByteBufUtils.writeItemStack(buf, (ItemStack)obj);
            }
            if(obj instanceof NBTTagCompound){
                ByteBufUtils.writeTag(buf, (NBTTagCompound)obj);
            }
        }
        return new FMLProxyPacket(buf, channelName);
    }
}
PacketHandler:
Код:
public class PacketHandler implements IPacketHandler{

    public static final byte PACKET_SYNC_ID = 0;
    public static final byte PACKET_TALENT_ID = 1;
    
    public void handleClientSide(ByteBuf buf, World world, EntityClientPlayerMP player){
        byte id = buf.readByte();

        if(id == PACKET_SYNC_ID){
            NBTTagCompound data = ByteBufUtils.readTag(buf);
            RPGPlayerData.forPlayer(player).loadNBTData(data);
        }
    }

    public void handleServerSide(ByteBuf buf, World world, EntityPlayerMP player){
        byte id = buf.readByte();

        if(id == PACKET_TALENT_ID){
            byte talent = buf.readByte();
            RPGPlayerData info = RPGPlayerData.forPlayer(player);
            info.addTalent(talent);
        }
    }
}
 
Код:
public void handleClientSide(ByteBuf buf, World world, EntityClientPlayerMP player){

Над этим пробывал?
 
Назад
Сверху