(sorry for bad english, i'm from venezuela)
Override this methods on your crop
@Override
public Item getItemDropped(int meta, Random random, int fortune) //get drop item based on meta
{
return meta == 7 ? this.getCropItem() : this.getSeedItem();
}
@SideOnly(Side.CLIENT)
public Item getItem(World world, int x, int y, int z) //get item with mouse wheel
{
return this.getSeedItem();
}
@Override
public ArrayList<ItemStack> getDrops(World world, int x, int y, int z, int metadata, int fortune) //get drops array
{
ArrayList<ItemStack> drops = new ArrayList<ItemStack>();
int count = quantityDropped(metadata, fortune, world.rand);
for(int i = 0; i < count; i++)
{
Item item = getItemDropped(metadata, world.rand, fortune);
if (item != null)
{
drops.add(new ItemStack(item, 1, damageDropped(metadata)));
}
}
if (metadata >= 7)
{
for (int i = 0; i < 3 + fortune; ++i)
{
if (world.rand.nextInt(15) <= metadata)
{
drops.add(new ItemStack(this.getSeedItem(), 1, 0)); //<-- here
}
}
}
return drops;
}