Post the code for ItemGemTool and ItemObsidianPickaxe, because those two are showing up in the error stack trace thing.
Ok here you go
ItemGemTool.java
package net.minecraft.src;
public class ItemGemTool extends Item
{
/** Array of blocks the tool has extra effect against. */
private Block[] blocksEffectiveAgainst;
protected float efficiencyOnProperMaterial = 4.0F;
/** Damage versus entities. */
private int damageVsEntity;
/** The material this tool is made from. */
protected EnumGemToolMaterial toolMaterial;
protected ItemGemTool(int par1, int par2, EnumGemToolMaterial par3EnumToolMaterial, Block[] par4ArrayOfBlock)
{
super(par1);
this.toolMaterial = par3EnumToolMaterial;
this.blocksEffectiveAgainst = par4ArrayOfBlock;
this.maxStackSize = 1;
this.setMaxDamage(par3EnumToolMaterial.getMaxUses());
this.efficiencyOnProperMaterial = par3EnumToolMaterial.getEfficiencyOnProperMaterial();
this.damageVsEntity = par2 + par3EnumToolMaterial.getDamageVsEntity();
this.setTabToDisplayOn(CreativeTabs.tabTools);
}
/**
* Returns the strength of the stack against a given block. 1.0F base, (Quality+1)*2 if correct blocktype, 1.5F if
* sword
*/
@Override
public float getStrVsBlock(ItemStack par1ItemStack, Block par2Block)
{
Block[] var3 = this.blocksEffectiveAgainst;
int var4 = var3.length;
for (int var5 = 0; var5 < var4; ++var5)
{
Block var6 = var3[var5];
if (var6 == par2Block)
{
return this.efficiencyOnProperMaterial;
}
}
return 1.0F;
}
/**
* Current implementations of this method in child classes do not use the entry argument beside ev. They just raise
* the damage on the stack.
*/
@Override
public boolean hitEntity(ItemStack par1ItemStack, EntityLiving par2EntityLiving, EntityLiving par3EntityLiving)
{
par1ItemStack.damageItem(2, par3EntityLiving);
return true;
}
@Override
public boolean func_77660_a(ItemStack par1ItemStack, World par2World, int par3, int par4, int par5, int par6, EntityLiving par7EntityLiving)
{
if (Block.blocksList[par3].getBlockHardness(par2World, par4, par5, par6) != 0.0D)
{
par1ItemStack.damageItem(1, par7EntityLiving);
}
return true;
}
/**
* Returns the damage against a given entity.
*/
@Override
public int getDamageVsEntity(Entity par1Entity)
{
return this.damageVsEntity;
}
/**
* Returns True is the item is renderer in full 3D when hold.
*/
@Override
public boolean isFull3D()
{
return true;
}
/**
* Return the enchantability factor of the item, most of the time is based on material.
*/
@Override
public int getItemEnchantability()
{
return this.toolMaterial.getEnchantability();
}
public String func_77861_e()
{
return this.toolMaterial.toString();
}
}
Here is the code i used for my pickaxes ItemObsidianPickaxe.java
>when i hit a piece of sand with a pickaxe
Here is the error code that i get
Ok here you go
ItemGemTool.java
ItemObsidianPickaxe.java
I really need help with this