@Override public void afterBlockBreak(ItemStack stack, World world, IBlockState state, BlockPos pos, EntityLivingBase player, int damage, boolean wasEffective) { // breaking leaves does not reduce durability if(state.getBlock().isLeaves(state, world, pos)) { damage = 0; } super.afterBlockBreak(stack, world, state, pos, player, damage, wasEffective); }