From f2b5e1f928f126f5b240b91c5548cb6fe011606a Mon Sep 17 00:00:00 2001 From: Lizbeth Rika Date: Sat, 10 Jan 2015 23:25:53 +0000 Subject: [PATCH] Fixed order of calls in ToolCommons. Closes #470. --- .../item/equipment/tool/ToolCommons.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/java/vazkii/botania/common/item/equipment/tool/ToolCommons.java b/src/main/java/vazkii/botania/common/item/equipment/tool/ToolCommons.java index 6304b40fd..0969dfdb7 100644 --- a/src/main/java/vazkii/botania/common/item/equipment/tool/ToolCommons.java +++ b/src/main/java/vazkii/botania/common/item/equipment/tool/ToolCommons.java @@ -67,21 +67,24 @@ public final class ToolCommons { return; Material mat = world.getBlock(x, y, z).getMaterial(); - if(!world.isRemote && blk != null && !blk.isAir(world, x, y, z) && blk.getPlayerRelativeBlockHardness(player, world, x, y, z) != 0) { + if(!world.isRemote && blk != null && !blk.isAir(world, x, y, z) && blk.getPlayerRelativeBlockHardness(player, world, x, y, z) < 0) { new ArrayList(); if(!blk.canHarvestBlock(player, meta) || !isRightMaterial(mat, materialsListing)) return; - if(!player.capabilities.isCreativeMode && blk != Blocks.bedrock) { + if(!player.capabilities.isCreativeMode) { int localMeta = world.getBlockMetadata(x, y, z); - if (blk.removedByPlayer(world, player, x, y, z)) - blk.onBlockDestroyedByPlayer(world, x, y, z, localMeta); - - damageItem(stack, 1, player, 80); - if(!dispose || !ItemElementiumPick.isDisposable(blk)) - blk.harvestBlock(world, player, x, y, z, localMeta); blk.onBlockHarvested(world, x, y, z, localMeta, player); + + if(blk.removedByPlayer(world, player, x, y, z, true)) { + blk.onBlockDestroyedByPlayer(world, x, y, z, localMeta); + + if(!dispose || !ItemElementiumPick.isDisposable(blk)) + blk.harvestBlock(world, player, x, y, z, localMeta); + } + + damageItem(stack, 1, player, 80); } else world.setBlockToAir(x, y, z); if(ConfigHandler.blockBreakParticles && ConfigHandler.blockBreakParticlesTool && !world.isRemote)