/**
  * Called when the player destroys a block with an item that can harvest it. (i, j, k) are the
  * coordinates of the block and l is the block's subtype/damage.
  */
 public void harvestBlock(World world, EntityPlayer entity, int x, int y, int z, int i) {
   if (world.isRemote
       || entity.getCurrentEquippedItem() == null
       || entity.getCurrentEquippedItem().getItem() != Items.shears
       || func_149887_c(i)
       || !this.func_149886_b(world, x, y, z, i, entity)) {
     super.harvestBlock(world, entity, x, y, z, i);
   }
 }