package net.tropicraft.item.tool;
import java.util.Set;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.tropicraft.block.BlockTropicraftOre;
import net.tropicraft.registry.TCBlockRegistry;
import com.google.common.collect.Sets;
public class ItemTropicraftPickaxe extends ItemTropicraftTool {
private static final Set<Block> blocksEffectiveAgainst = Sets.newHashSet(new Block[] {Blocks.cobblestone, Blocks.double_stone_slab,
Blocks.stone_slab, Blocks.stone, Blocks.sandstone, Blocks.mossy_cobblestone, Blocks.iron_ore, Blocks.iron_block,
Blocks.coal_ore, Blocks.gold_block, Blocks.gold_ore, Blocks.diamond_ore, Blocks.diamond_block, Blocks.ice,
Blocks.netherrack, Blocks.lapis_ore, Blocks.lapis_block, Blocks.redstone_ore, Blocks.lit_redstone_ore,
Blocks.rail, Blocks.detector_rail, Blocks.golden_rail, Blocks.activator_rail,
TCBlockRegistry.azuriteOre, TCBlockRegistry.oreBlocks, TCBlockRegistry.eudialyteOre, TCBlockRegistry.zirconOre});
public ItemTropicraftPickaxe(ToolMaterial toolMaterial, String textureName) {
super(2.0F, toolMaterial, blocksEffectiveAgainst);
this.setTextureName(textureName);
}
@Override
public boolean func_150897_b(Block block) {
if (block instanceof BlockTropicraftOre) {
if (block == TCBlockRegistry.azuriteOre) {
return this.toolMaterial.getHarvestLevel() == 3;
} else {
return this.toolMaterial.getHarvestLevel() > 1;
}
}
return block == Blocks.obsidian ? this.toolMaterial.getHarvestLevel() == 3 : (block != Blocks.diamond_block && block != Blocks.diamond_ore ? (block != Blocks.emerald_ore && block != Blocks.emerald_block ? (block != Blocks.gold_block && block != Blocks.gold_ore ? (block != Blocks.iron_block && block != Blocks.iron_ore ? (block != Blocks.lapis_block && block != Blocks.lapis_ore ? (block != Blocks.redstone_ore && block != Blocks.lit_redstone_ore ? (block.getMaterial() == Material.rock ? true : (block.getMaterial() == Material.iron ? true : block.getMaterial() == Material.anvil)) : this.toolMaterial.getHarvestLevel() >= 2) : this.toolMaterial.getHarvestLevel() >= 1) : this.toolMaterial.getHarvestLevel() >= 1) : this.toolMaterial.getHarvestLevel() >= 2) : this.toolMaterial.getHarvestLevel() >= 2) : this.toolMaterial.getHarvestLevel() >= 2);
}
@Override
public float func_150893_a(ItemStack stack, Block block) {
return block.getMaterial() != Material.iron && block.getMaterial() != Material.anvil && block.getMaterial() != Material.rock ? super.func_150893_a(stack, block) : this.efficiencyOnProperMaterial;
}
}