I have a custom tool which overrides the onBlockDestroyed(...) method from the minecraft ItemTool class. In this, a new item stack is spawned at the location of the destroyed block with no motion. However, the item stack flies a fair distance, as if it were spawned inside the block and gained motion from trying to escape- this seems to imply that it is created (and ticked?) before the block is fully destroyed. I would like the custom drop to not have any motion; any advice would be appreciated. If possible, I'd like to keep this contained to the custom tool's class. It seems that past versions of forge may have had a method called onBlockHarvested, which was called after the block was destroyed. If that is true, something like that is what I'm looking for.
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState state, BlockPos pos, EntityLivingBase entityLiving) {
...
EntityItem entityitem = new EntityItem(worldIn, pos.getX(), pos.getY() + 0.5f, pos.getZ(), customDrop);
entityitem.motionX = 0f;
entityitem.motionY = 0f;
entityitem.motionZ = 0f;
entityitem.setDefaultPickupDelay();
worldIn.spawnEntityInWorld(entityitem);
}