Bugzoo Posted November 22, 2014 Posted November 22, 2014 I've set the harvest level to 2, but even when I break it with a wooden pick it drops the item. public BlockPlasticOre(Material Material) { super(Material); setHardness(3.0F); setCreativeTab(FinancialMod.financialTab); setResistance(5F); setStepSound(Block.soundTypeStone); this.setHarvestLevel("pickaxe", 2); } public Item getItemDropped(int metadata, Random random, int fortune){ return FinancialMod.Plastic; } Quote
TheGreyGhost Posted November 23, 2014 Posted November 23, 2014 Hi Try adding breakpoints to here ForgeHooks.canToolHarvestBlock() public static boolean canToolHarvestBlock(Block block, int metadata, ItemStack stack) { String tool = block.getHarvestTool(metadata); // Breakpoint here if (stack == null || tool == null) return false; return stack.getItem().getHarvestLevel(stack, tool) >= block.getHarvestLevel(metadata); } and ForgeHooks::canHarvestBlock() public static boolean canHarvestBlock(Block block, EntityPlayer player, int metadata) { if (block.getMaterial().isToolNotRequired()) // Breakpoint here { return true; } ItemStack stack = player.inventory.getCurrentItem(); String tool = block.getHarvestTool(metadata); if (stack == null || tool == null) { return player.canHarvestBlock(block); } int toolLevel = stack.getItem().getHarvestLevel(stack, tool); if (toolLevel < 0) { return player.canHarvestBlock(block); } return toolLevel >= block.getHarvestLevel(metadata); } Then step through the code line by line to see why it lets your tool harvest the block when it shouldn't. -TGG Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.