Posted June 19, 201510 yr Hello everyone, my problem right now is that I simply want to change the tool u need to harvest iron ore. So normally you need a stone pickaxe to mine iron and you are good to go. I want to add some more tools, and decided to set the harvestLevel of iron to 3. Which means that normally you should not be able to mine it with stone. Bad news: I can still mine it with stone. Am I missing something totally retarded? Part of my Init method, and yes it is beeing called, since a syso on getHarvestTool gives me pickaxe and getHarvestLevel gets me 3. Blocks.iron_ore.setHarvestLevel("pickaxe", 3);
June 19, 201510 yr Can I see the whole class? Creator of the Master Chef Mod and many more to come. If I helped you, please click the 'thank you' button.
June 19, 201510 yr Author package de.failender.basewars; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraftforge.fml.common.registry.GameRegistry; import de.failender.basewars.items.Modules; import de.failender.basewars.network.NetworkHandler; import de.failender.basewars.proxies.CommonProxy; import de.failender.basewars.tileentities.TileEntityBase; import de.failender.basewars.util.BaseHandler; import de.failender.basewars.util.BaseUtils; import de.failender.basewars.util.GuiHandler; @Mod(version=BaseWars.VERSION, name=BaseWars.NAME , modid = BaseWars.MODID) public class BaseWars { public static final String NAME ="Base Wars"; public static final String VERSION ="0.1"; public static final String MODID = "basewars"; public static final short BASEGUIID = 0; public static final short FURNACESID=2; public static final short BASEFURNACEID=1; public static CreativeTabs baseWarTab = new CreativeTabs("basewartab") { @Override public Item getTabIconItem() { return Item.getItemFromBlock(BaseWarBlocks.base); } }; @SidedProxy(clientSide="de.failender.basewars.proxies.ClientProxy", serverSide="de.failender.basewars.proxies.CommonProxy") public static CommonProxy proxy; @Instance public static BaseWars instance; @EventHandler public void preInit(FMLPreInitializationEvent event) { NetworkHandler.initialize(); } @EventHandler public void Init(FMLInitializationEvent event) { BaseWarBlocks.register(); BaseWarItems.register(); Modules.finishStartup(); GameRegistry.registerTileEntity(TileEntityBase.class, "tileentitybase"); BaseUtils.RemoveRecipe(new ItemStack(Items.stone_pickaxe)); GameRegistry.addShapedRecipe(new ItemStack(Items.stone_pickaxe), "TTT"," S "," S ", 'S', Items.stick, 'T', Blocks.stone); Blocks.iron_ore.setHarvestLevel("pickaxe", 3); System.out.println(Blocks.iron_ore.getHarvestLevel(Blocks.iron_ore.getDefaultState())); proxy.registerRenderer(); NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GuiHandler()); MinecraftForge.EVENT_BUS.register(new BaseHandler()); } @EventHandler public void postInit(FMLPostInitializationEvent event) { } }
June 19, 201510 yr Hi This link talks more about mining blocks. http://greyminecraftcoder.blogspot.ch/2015/01/mining-blocks-with-tools.html When you say "I can still mine it with stone." do you mean a) "The block breaks when I stone pickaxe it" or b) "The block breaks when I stone pickaxe it, and gives me ore". setHarvestLevel should stop (b) but not (a) -TGG
June 20, 201510 yr Hi This link talks more about mining blocks. http://greyminecraftcoder.blogspot.ch/2015/01/mining-blocks-with-tools.html When you say "I can still mine it with stone." do you mean a) "The block breaks when I stone pickaxe it" or b) "The block breaks when I stone pickaxe it, and gives me ore". setHarvestLevel should stop (b) but not (a) -TGG Do you think it might be possible that vanilla blocks are setting their information after Init? That is the only think I can think of that could be causing this.
August 9, 201510 yr If you suspect that the vanilla blocks are setting their info after init, then wouldn't you want to move yours to postInit (not preInit)?
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.