Jump to content

Recommended Posts

Posted

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); 

Posted
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)
{

}
}

Posted

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.

  • 1 month later...

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.