net.minecraft.item

## Class Item

- java.lang.Object
- - net.minecraft.item.Item

- Direct Known Subclasses:
    ItemArmor, ItemBed, ItemBlock, ItemBoat, ItemBook, ItemBow, ItemBucket, ItemBucketMilk, ItemCarrotOnAStick, ItemCoal, ItemDoor, ItemDye, ItemEditableBook, ItemEgg, ItemEnchantedBook, ItemEnderEye, ItemEnderPearl, ItemExpBottle, ItemFireball, ItemFirework, ItemFireworkCharge, ItemFishingRod, ItemFlintAndSteel, ItemFluidContainer, ItemFood, ItemGlassBottle, ItemHangingEntity, ItemHoe, ItemLeash, ItemMapBase, ItemMinecart, ItemMonsterPlacer, ItemNameTag, ItemPotion, ItemRecord, ItemRedstone, ItemReed, ItemSaddle, ItemSeeds, ItemShears, ItemSign, ItemSimpleFoiled, ItemSkull, ItemSnowball, ItemSword, ItemTool, ItemWritableBook

      public class Item
      extends Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static Item` | `appleGold`
    `static Item` | `appleRed`
    `static Item` | `arrow`
    `static Item` | `axeDiamond`
    `static Item` | `axeGold`
    `static Item` | `axeIron`
    `static Item` | `axeStone`
    `static Item` | `axeWood`
    `static Item` | `bakedPotato`
    `static Item` | `bed`
    `static Item` | `beefCooked`
    `static Item` | `beefRaw`
    `static Item` | `blazePowder`
    `static Item` | `blazeRod`
    `static Item` | `boat`
    `static Item` | `bone`
    `static Item` | `book`
    `static ItemArmor` | `bootsChain`
    `static ItemArmor` | `bootsDiamond`
    `static ItemArmor` | `bootsGold`
    `static ItemArmor` | `bootsIron`
    `static ItemArmor` | `bootsLeather`
    `static ItemBow` | `bow`
    `static Item` | `bowlEmpty`
    `static Item` | `bowlSoup`
    `static Item` | `bread`
    `static Item` | `brewingStand`
    `static Item` | `brick`
    `static Item` | `bucketEmpty`
    `static Item` | `bucketLava`
    `static Item` | `bucketMilk`
    `static Item` | `bucketWater`
    `static Item` | `cake`
    `static Item` | `carrot`
    `static Item` | `carrotOnAStick`
    `static Item` | `cauldron`
    `static Item` | `chickenCooked`
    `static Item` | `chickenRaw`
    `static Item` | `clay`
    `static Item` | `coal`
    `static Item` | `comparator`
    `static Item` | `compass`
    `static Item` | `cookie`
    `static Item` | `diamond`
    `static Item` | `doorIron`
    `static Item` | `doorWood`
    `static Item` | `dyePowder`
    `static Item` | `egg`
    `static Item` | `emerald`
    `static ItemEmptyMap` | `emptyMap`
    `static ItemEnchantedBook` | `enchantedBook`
    `static Item` | `enderPearl`
    `static Item` | `expBottle` Bottle o' Enchanting.
    `static Item` | `eyeOfEnder`
    `static Item` | `feather`
    `static Item` | `fermentedSpiderEye`
    `static Item` | `fireballCharge` Fire Charge.
    `static Item` | `firework`
    `static Item` | `fireworkCharge`
    `static Item` | `fishCooked`
    `static ItemFishingRod` | `fishingRod`
    `static Item` | `fishRaw`
    `static Item` | `flint`
    `static Item` | `flintAndSteel`
    `static Item` | `flowerPot`
    `static Item` | `ghastTear`
    `static Item` | `glassBottle`
    `static Item` | `glowstone`
    `static Item` | `goldenCarrot`
    `static Item` | `goldNugget`
    `static Item` | `gunpowder`
    `static ItemArmor` | `helmetChain`
    `static ItemArmor` | `helmetDiamond`
    `static ItemArmor` | `helmetGold`
    `static ItemArmor` | `helmetIron`
    `static ItemArmor` | `helmetLeather`
    `static Item` | `hoeDiamond`
    `static Item` | `hoeGold`
    `static Item` | `hoeIron`
    `static Item` | `hoeStone`
    `static Item` | `hoeWood`
    `static Item` | `horseArmorDiamond`
    `static Item` | `horseArmorGold`
    `static Item` | `horseArmorIron`
    `static Item` | `ingotGold`
    `static Item` | `ingotIron`
    `static Item` | `itemFrame`
    `int` | `itemID` The ID of this item.
    `static Item[]` | `itemsList` A 32000 elements Item array.
    `static Item` | `leash`
    `static Item` | `leather`
    `static ItemArmor` | `legsChain`
    `static ItemArmor` | `legsDiamond`
    `static ItemArmor` | `legsGold`
    `static ItemArmor` | `legsIron`
    `static ItemArmor` | `legsLeather`
    `static Item` | `magmaCream`
    `static ItemMap` | `map`
    `static Item` | `melon`
    `static Item` | `melonSeeds`
    `static Item` | `minecartCrate`
    `static Item` | `minecartEmpty`
    `static Item` | `minecartHopper`
    `static Item` | `minecartPowered`
    `static Item` | `minecartTnt`
    `static Item` | `monsterPlacer`
    `static Item` | `nameTag`
    `static Item` | `netherQuartz`
    `static Item` | `netherrackBrick`
    `static Item` | `netherStalkSeeds`
    `static Item` | `netherStar`
    `static Item` | `painting`
    `static Item` | `paper`
    `static Item` | `pickaxeDiamond`
    `static Item` | `pickaxeGold`
    `static Item` | `pickaxeIron`
    `static Item` | `pickaxeStone`
    `static Item` | `pickaxeWood`
    `static ItemArmor` | `plateChain`
    `static ItemArmor` | `plateDiamond`
    `static ItemArmor` | `plateGold`
    `static ItemArmor` | `plateIron`
    `static ItemArmor` | `plateLeather`
    `static Item` | `pocketSundial`
    `static Item` | `poisonousPotato`
    `static Item` | `porkCooked`
    `static Item` | `porkRaw`
    `static Item` | `potato`
    `static ItemPotion` | `potion`
    `static Item` | `pumpkinPie`
    `static Item` | `pumpkinSeeds`
    `static Item` | `record11`
    `static Item` | `record13`
    `static Item` | `recordBlocks`
    `static Item` | `recordCat`
    `static Item` | `recordChirp`
    `static Item` | `recordFar`
    `static Item` | `recordMall`
    `static Item` | `recordMellohi`
    `static Item` | `recordStal`
    `static Item` | `recordStrad`
    `static Item` | `recordWait`
    `static Item` | `recordWard`
    `static Item` | `redstone`
    `static Item` | `redstoneRepeater`
    `static Item` | `reed`
    `static Item` | `rottenFlesh`
    `static Item` | `saddle`
    `static Item` | `seeds`
    `static ItemShears` | `shears` Item introduced on 1.7 version, is a shear to cut leaves (you can keep the block) or get wool from sheeps.
    `static Item` | `shovelDiamond`
    `static Item` | `shovelGold`
    `static Item` | `shovelIron`
    `static Item` | `shovelStone`
    `static Item` | `shovelWood`
    `static Item` | `sign`
    `static Item` | `silk`
    `static Item` | `skull`
    `static Item` | `slimeBall`
    `static Item` | `snowball`
    `static Item` | `speckledMelon`
    `static Item` | `spiderEye`
    `static Item` | `stick`
    `static Item` | `sugar`
    `static Item` | `swordDiamond`
    `static Item` | `swordGold`
    `static Item` | `swordIron`
    `static Item` | `swordStone`
    `static Item` | `swordWood`
    `static Item` | `wheat`
    `static Item` | `writableBook`
    `static Item` | `writtenBook`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Item(int par1)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)`
    `boolean` | `canHarvestBlock(Block par1Block)` Returns if the item (tool) can harvest results from the block type.
    `boolean` | `canHarvestBlock(Block par1Block, ItemStack itemStack)` ItemStack sensitive version of `canHarvestBlock(Block)`
    `boolean` | `canItemEditBlocks()` Returns true if players can use this item to affect the world (e.g.
    `Entity` | `createEntity(World world, Entity location, ItemStack itemstack)` This function should return a new entity to replace the dropped item.
    `boolean` | `doesContainerItemLeaveCraftingGrid(ItemStack par1ItemStack)` If this returns true, after a recipe involving this item is crafted the container item will be added to the player's inventory instead of remaining in the crafting grid.
    `ModelBiped` | `getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot)` Override this method to have an item handle its own armor rendering.
    `String` | `getArmorTexture(ItemStack stack, Entity entity, int slot, int layer)` Deprecated.
    `String` | `getArmorTexture(ItemStack stack, Entity entity, int slot, String type)` Called by RenderBiped and RenderPlayer to determine the armor texture that should be use for the currently equiped item.
    `WeightedRandomChestContent` | `getChestGenBase(ChestGenHooks chest, Random rnd, WeightedRandomChestContent original)` Generates the base Random item for a specific instance of the chest gen, Enchanted books use this to pick a random enchantment.
    `int` | `getColorFromItemStack(ItemStack par1ItemStack, int par2)`
    `Item` | `getContainerItem()`
    `ItemStack` | `getContainerItemStack(ItemStack itemStack)` ItemStack sensitive version of getContainerItem.
    `CreativeTabs` | `getCreativeTab()`
    `CreativeTabs[]` | `getCreativeTabs()` Gets a list of tabs that items belonging to this class can display on, combined properly with getSubItems allows for a single item to span many sub-items across many tabs.
    `int` | `getDamage(ItemStack stack)` Return the itemDamage represented by this ItemStack.
    `float` | `getDamageVsEntity(Entity par1Entity, ItemStack itemStack)` Deprecated.
    `int` | `getDisplayDamage(ItemStack stack)` Return the itemDamage display value represented by this itemstack.
    `int` | `getEntityLifespan(ItemStack itemStack, World world)` Retrieves the normal 'lifespan' of this item when it is dropped on the ground as a EntityItem.
    `FontRenderer` | `getFontRenderer(ItemStack stack)` Returns the font renderer used to render tooltips and overlays for this item.
    `boolean` | `getHasSubtypes()`
    `Icon` | `getIcon(ItemStack stack, int pass)` Return the correct icon for rendering based on the supplied ItemStack and render pass.
    `Icon` | `getIcon(ItemStack stack, int renderPass, EntityPlayer player, ItemStack usingItem, int useRemaining)` Player, Render pass, and item usage sensitive version of getIconIndex.
    `Icon` | `getIconFromDamage(int par1)`
    `Icon` | `getIconFromDamageForRenderPass(int par1, int par2)`
    `Icon` | `getIconIndex(ItemStack par1ItemStack)`
    `boolean` | `getIsRepairable(ItemStack par1ItemStack, ItemStack par2ItemStack)` Return whether this item is repairable in an anvil.
    `com.google.common.collect.Multimap` | `getItemAttributeModifiers()` Gets a map of item attribute modifiers, used by ItemSword to increase hit damage.
    `String` | `getItemDisplayName(ItemStack par1ItemStack)`
    `int` | `getItemEnchantability()` Return the enchantability factor of the item, most of the time is based on material.
    `String` | `getItemStackDisplayName(ItemStack par1ItemStack)`
    `int` | `getItemStackLimit()` Returns the maximum size of the stack for a specific item.
    `EnumAction` | `getItemUseAction(ItemStack par1ItemStack)` returns the action that specifies what animation to play when the items is being used
    `int` | `getMaxDamage()` Returns the maximum damage an item can take.
    `int` | `getMaxDamage(ItemStack stack)` Return the maxDamage for this ItemStack.
    `int` | `getMaxItemUseDuration(ItemStack par1ItemStack)` How long it takes to use or consume an item
    `int` | `getMetadata(int par1)` Returns the metadata of the block which this Item (ItemBlock) can place
    `String` | `getPotionEffect()` Returns a string representing what this item does to a potion.
    `String` | `getPotionEffect(ItemStack stack)` ItemStack sensitive version of getPotionEffect
    `EnumRarity` | `getRarity(ItemStack par1ItemStack)`
    `int` | `getRenderPasses(int metadata)` Returns the number of render passes/layers this item has.
    `boolean` | `getShareTag()` If this function returns true (or the item is damageable), the ItemStack's NBT tag will be sent to the client.
    `float` | `getSmeltingExperience(ItemStack item)` Determines the base experience for a player when they remove this item from a furnace slot.
    `int` | `getSpriteNumber()`
    `String` | `getStatName()`
    `float` | `getStrVsBlock(ItemStack par1ItemStack, Block par2Block)` Returns the strength of the stack against a given block.
    `float` | `getStrVsBlock(ItemStack itemstack, Block block, int metadata)` Metadata-sensitive version of getStrVsBlock
    `void` | `getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List)`
    `String` | `getUnlocalizedName()` Returns the unlocalized name of this item.
    `String` | `getUnlocalizedName(ItemStack par1ItemStack)` Returns the unlocalized name of this item.
    `String` | `getUnlocalizedNameInefficiently(ItemStack par1ItemStack)` Translates the unlocalized name of this item, but without the .name suffix, so the translation fails and the unlocalized name itself is returned.
    `boolean` | `hasContainerItem()` True if this Item has a container item (a.k.a.
    `boolean` | `hasCustomEntity(ItemStack stack)` Determines if this Item has a special entity for when they are in the world.
    `boolean` | `hasEffect(ItemStack par1ItemStack)` Deprecated.
    `boolean` | `hasEffect(ItemStack par1ItemStack, int pass)` Render Pass sensitive version of hasEffect()
    `boolean` | `hitEntity(ItemStack par1ItemStack, EntityLivingBase par2EntityLivingBase, EntityLivingBase par3EntityLivingBase)` Current implementations of this method in child classes do not use the entry argument beside ev.
    `boolean` | `isBookEnchantable(ItemStack itemstack1, ItemStack itemstack2)` Allow or forbid the specific book/item combination as an anvil enchant
    `boolean` | `isDamageable()`
    `boolean` | `isDamaged(ItemStack stack)` Return if this itemstack is damaged.
    `boolean` | `isFull3D()`
    `boolean` | `isItemTool(ItemStack par1ItemStack)` Checks isDamagable and if it cannot be stacked
    `boolean` | `isMap()` false for all Items except sub-classes of ItemMapBase
    `boolean` | `isPotionIngredient()` Returns true if this item serves as a potion ingredient (its ingredient information is not null).
    `boolean` | `isPotionIngredient(ItemStack stack)` ItemStack sensitive version of isPotionIngredient
    `boolean` | `isRepairable()` Called by CraftingManager to determine if an item is reparable.
    `boolean` | `isValidArmor(ItemStack stack, int armorType, Entity entity)` Determines if the specific ItemStack can be placed in the specified armor slot.
    `boolean` | `itemInteractionForEntity(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, EntityLivingBase par3EntityLivingBase)` Returns true if the item can be used on the given entity, e.g.
    `void` | `onArmorTickUpdate(World world, EntityPlayer player, ItemStack itemStack)` Called to tick armor in the armor slot.
    `boolean` | `onBlockDestroyed(ItemStack par1ItemStack, World par2World, int par3, int par4, int par5, int par6, EntityLivingBase par7EntityLivingBase)`
    `boolean` | `onBlockStartBreak(ItemStack itemstack, int X, int Y, int Z, EntityPlayer player)` Called before a block is broken.
    `void` | `onCreated(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)` Called when item is crafted/smelted.
    `boolean` | `onDroppedByPlayer(ItemStack item, EntityPlayer player)` Called when a player drops the item into the world, returning false from this will prevent the item from being removed from the players inventory and spawning in the world
    `ItemStack` | `onEaten(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)`
    `boolean` | `onEntityItemUpdate(EntityItem entityItem)` Called by the default implemetation of EntityItem's onUpdate method, allowing for cleaner control over the update of the item without having to write a subclass.
    `boolean` | `onEntitySwing(EntityLivingBase entityLiving, ItemStack stack)` Called when a entity tries to play the 'swing' animation.
    `ItemStack` | `onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)` Called whenever this item is equipped and the right mouse button is pressed.
    `boolean` | `onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10)` Callback for item usage.
    `boolean` | `onItemUseFirst(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)` This is called when the item is used, before the block is activated.
    `boolean` | `onLeftClickEntity(ItemStack stack, EntityPlayer player, Entity entity)` Called when the player Left Clicks (attacks) an entity.
    `void` | `onPlayerStoppedUsing(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer, int par4)` called when the player releases the use item button.
    `void` | `onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)` Called each tick as long the item is on a player inventory.
    `void` | `onUsingItemTick(ItemStack stack, EntityPlayer player, int count)` Called each tick while using an item.
    `void` | `registerIcons(IconRegister par1IconRegister)`
    `void` | `renderHelmetOverlay(ItemStack stack, EntityPlayer player, ScaledResolution resolution, float partialTicks, boolean hasScreen, int mouseX, int mouseY)` Called when the client starts rendering the HUD, for whatever item the player currently has as a helmet.
    `boolean` | `requiresMultipleRenderPasses()`
    `Item` | `setContainerItem(Item par1Item)`
    `Item` | `setCreativeTab(CreativeTabs par1CreativeTabs)` returns this;
    `void` | `setDamage(ItemStack stack, int damage)` Set the damage for this itemstack.
    `Item` | `setFull3D()` Sets bFull3D to True and return the object.
    `Item` | `setMaxDamage(int par1)` set max damage of an Item
    `Item` | `setMaxStackSize(int par1)`
    `Item` | `setNoRepair()` Call to disable repair recipes.
    `Item` | `setPotionEffect(String par1Str)` Sets the string representing this item's effect on a potion when used as an ingredient.
    `Item` | `setTextureName(String par1Str)`
    `Item` | `setUnlocalizedName(String par1Str)` Sets the unlocalized name of this item to the string passed as the parameter, prefixed by "item."
    `boolean` | `shouldPassSneakingClickToBlock(World par2World, int par4, int par5, int par6)` Should this item, when held, allow sneak-clicks to pass through to the underlying block?
    `boolean` | `shouldRotateAroundWhenRendering()`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### itemsList

          public static Item[] itemsList

      A 32000 elements Item array.

    - #### shovelIron

          public static Item shovelIron

    - #### pickaxeIron

          public static Item pickaxeIron

    - #### axeIron

          public static Item axeIron

    - #### flintAndSteel

          public static Item flintAndSteel

    - #### appleRed

          public static Item appleRed

    - #### bow

          public static ItemBow bow

    - #### arrow

          public static Item arrow

    - #### coal

          public static Item coal

    - #### diamond

          public static Item diamond

    - #### ingotIron

          public static Item ingotIron

    - #### ingotGold

          public static Item ingotGold

    - #### swordIron

          public static Item swordIron

    - #### swordWood

          public static Item swordWood

    - #### shovelWood

          public static Item shovelWood

    - #### pickaxeWood

          public static Item pickaxeWood

    - #### axeWood

          public static Item axeWood

    - #### swordStone

          public static Item swordStone

    - #### shovelStone

          public static Item shovelStone

    - #### pickaxeStone

          public static Item pickaxeStone

    - #### axeStone

          public static Item axeStone

    - #### swordDiamond

          public static Item swordDiamond

    - #### shovelDiamond

          public static Item shovelDiamond

    - #### pickaxeDiamond

          public static Item pickaxeDiamond

    - #### axeDiamond

          public static Item axeDiamond

    - #### stick

          public static Item stick

    - #### bowlEmpty

          public static Item bowlEmpty

    - #### bowlSoup

          public static Item bowlSoup

    - #### swordGold

          public static Item swordGold

    - #### shovelGold

          public static Item shovelGold

    - #### pickaxeGold

          public static Item pickaxeGold

    - #### axeGold

          public static Item axeGold

    - #### silk

          public static Item silk

    - #### feather

          public static Item feather

    - #### gunpowder

          public static Item gunpowder

    - #### hoeWood

          public static Item hoeWood

    - #### hoeStone

          public static Item hoeStone

    - #### hoeIron

          public static Item hoeIron

    - #### hoeDiamond

          public static Item hoeDiamond

    - #### hoeGold

          public static Item hoeGold

    - #### seeds

          public static Item seeds

    - #### wheat

          public static Item wheat

    - #### bread

          public static Item bread

    - #### helmetLeather

          public static ItemArmor helmetLeather

    - #### plateLeather

          public static ItemArmor plateLeather

    - #### legsLeather

          public static ItemArmor legsLeather

    - #### bootsLeather

          public static ItemArmor bootsLeather

    - #### helmetChain

          public static ItemArmor helmetChain

    - #### plateChain

          public static ItemArmor plateChain

    - #### legsChain

          public static ItemArmor legsChain

    - #### bootsChain

          public static ItemArmor bootsChain

    - #### helmetIron

          public static ItemArmor helmetIron

    - #### plateIron

          public static ItemArmor plateIron

    - #### legsIron

          public static ItemArmor legsIron

    - #### bootsIron

          public static ItemArmor bootsIron

    - #### helmetDiamond

          public static ItemArmor helmetDiamond

    - #### plateDiamond

          public static ItemArmor plateDiamond

    - #### legsDiamond

          public static ItemArmor legsDiamond

    - #### bootsDiamond

          public static ItemArmor bootsDiamond

    - #### helmetGold

          public static ItemArmor helmetGold

    - #### plateGold

          public static ItemArmor plateGold

    - #### legsGold

          public static ItemArmor legsGold

    - #### bootsGold

          public static ItemArmor bootsGold

    - #### flint

          public static Item flint

    - #### porkRaw

          public static Item porkRaw

    - #### porkCooked

          public static Item porkCooked

    - #### painting

          public static Item painting

    - #### appleGold

          public static Item appleGold

    - #### sign

          public static Item sign

    - #### doorWood

          public static Item doorWood

    - #### bucketEmpty

          public static Item bucketEmpty

    - #### bucketWater

          public static Item bucketWater

    - #### bucketLava

          public static Item bucketLava

    - #### minecartEmpty

          public static Item minecartEmpty

    - #### saddle

          public static Item saddle

    - #### doorIron

          public static Item doorIron

    - #### redstone

          public static Item redstone

    - #### snowball

          public static Item snowball

    - #### boat

          public static Item boat

    - #### leather

          public static Item leather

    - #### bucketMilk

          public static Item bucketMilk

    - #### brick

          public static Item brick

    - #### clay

          public static Item clay

    - #### reed

          public static Item reed

    - #### paper

          public static Item paper

    - #### book

          public static Item book

    - #### slimeBall

          public static Item slimeBall

    - #### minecartCrate

          public static Item minecartCrate

    - #### minecartPowered

          public static Item minecartPowered

    - #### egg

          public static Item egg

    - #### compass

          public static Item compass

    - #### fishingRod

          public static ItemFishingRod fishingRod

    - #### pocketSundial

          public static Item pocketSundial

    - #### glowstone

          public static Item glowstone

    - #### fishRaw

          public static Item fishRaw

    - #### fishCooked

          public static Item fishCooked

    - #### dyePowder

          public static Item dyePowder

    - #### bone

          public static Item bone

    - #### sugar

          public static Item sugar

    - #### cake

          public static Item cake

    - #### bed

          public static Item bed

    - #### redstoneRepeater

          public static Item redstoneRepeater

    - #### cookie

          public static Item cookie

    - #### map

          public static ItemMap map

    - #### shears

          public static ItemShears shears

      Item introduced on 1.7 version, is a shear to cut leaves (you can keep the block) or get wool from sheeps.

    - #### melon

          public static Item melon

    - #### pumpkinSeeds

          public static Item pumpkinSeeds

    - #### melonSeeds

          public static Item melonSeeds

    - #### beefRaw

          public static Item beefRaw

    - #### beefCooked

          public static Item beefCooked

    - #### chickenRaw

          public static Item chickenRaw

    - #### chickenCooked

          public static Item chickenCooked

    - #### rottenFlesh

          public static Item rottenFlesh

    - #### enderPearl

          public static Item enderPearl

    - #### blazeRod

          public static Item blazeRod

    - #### ghastTear

          public static Item ghastTear

    - #### goldNugget

          public static Item goldNugget

    - #### netherStalkSeeds

          public static Item netherStalkSeeds

    - #### potion

          public static ItemPotion potion

    - #### glassBottle

          public static Item glassBottle

    - #### spiderEye

          public static Item spiderEye

    - #### fermentedSpiderEye

          public static Item fermentedSpiderEye

    - #### blazePowder

          public static Item blazePowder

    - #### magmaCream

          public static Item magmaCream

    - #### brewingStand

          public static Item brewingStand

    - #### cauldron

          public static Item cauldron

    - #### eyeOfEnder

          public static Item eyeOfEnder

    - #### speckledMelon

          public static Item speckledMelon

    - #### monsterPlacer

          public static Item monsterPlacer

    - #### expBottle

          public static Item expBottle

      Bottle o' Enchanting. Drops between 1 and 3 experience orbs when thrown.

    - #### fireballCharge

          public static Item fireballCharge

      Fire Charge. When used in a dispenser it fires a fireball similiar to a Ghast's.

    - #### writableBook

          public static Item writableBook

    - #### writtenBook

          public static Item writtenBook

    - #### emerald

          public static Item emerald

    - #### itemFrame

          public static Item itemFrame

    - #### flowerPot

          public static Item flowerPot

    - #### carrot

          public static Item carrot

    - #### potato

          public static Item potato

    - #### bakedPotato

          public static Item bakedPotato

    - #### poisonousPotato

          public static Item poisonousPotato

    - #### emptyMap

          public static ItemEmptyMap emptyMap

    - #### goldenCarrot

          public static Item goldenCarrot

    - #### skull

          public static Item skull

    - #### carrotOnAStick

          public static Item carrotOnAStick

    - #### netherStar

          public static Item netherStar

    - #### pumpkinPie

          public static Item pumpkinPie

    - #### firework

          public static Item firework

    - #### fireworkCharge

          public static Item fireworkCharge

    - #### enchantedBook

          public static ItemEnchantedBook enchantedBook

    - #### comparator

          public static Item comparator

    - #### netherrackBrick

          public static Item netherrackBrick

    - #### netherQuartz

          public static Item netherQuartz

    - #### minecartTnt

          public static Item minecartTnt

    - #### minecartHopper

          public static Item minecartHopper

    - #### horseArmorIron

          public static Item horseArmorIron

    - #### horseArmorGold

          public static Item horseArmorGold

    - #### horseArmorDiamond

          public static Item horseArmorDiamond

    - #### leash

          public static Item leash

    - #### nameTag

          public static Item nameTag

    - #### record13

          public static Item record13

    - #### recordCat

          public static Item recordCat

    - #### recordBlocks

          public static Item recordBlocks

    - #### recordChirp

          public static Item recordChirp

    - #### recordFar

          public static Item recordFar

    - #### recordMall

          public static Item recordMall

    - #### recordMellohi

          public static Item recordMellohi

    - #### recordStal

          public static Item recordStal

    - #### recordStrad

          public static Item recordStrad

    - #### recordWard

          public static Item recordWard

    - #### record11

          public static Item record11

    - #### recordWait

          public static Item recordWait

    - #### itemID

          public final int itemID

      The ID of this item.

  - ### Constructor Detail

    - #### Item

          public Item(int par1)

  - ### Method Detail

    - #### setMaxStackSize

          public Item setMaxStackSize(int par1)

    - #### getSpriteNumber

          public int getSpriteNumber()

    - #### getIconFromDamage

          public Icon getIconFromDamage(int par1)

    - #### getIconIndex

          public final Icon getIconIndex(ItemStack par1ItemStack)

    - #### onItemUse

          public boolean onItemUse(ItemStack par1ItemStack,
                          EntityPlayer par2EntityPlayer,
                          World par3World,
                          int par4,
                          int par5,
                          int par6,
                          int par7,
                          float par8,
                          float par9,
                          float par10)

      Callback for item usage. If the item does something special on right clicking, he will have one of those. Return True if something happen and false if it don't. This is for ITEMS, not BLOCKS

    - #### getStrVsBlock

          public float getStrVsBlock(ItemStack par1ItemStack,
                            Block par2Block)

      Returns the strength of the stack against a given block. 1.0F base, (Quality+1)*2 if correct blocktype, 1.5F if sword

    - #### onItemRightClick

          public ItemStack onItemRightClick(ItemStack par1ItemStack,
                                   World par2World,
                                   EntityPlayer par3EntityPlayer)

      Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer

    - #### onEaten

          public ItemStack onEaten(ItemStack par1ItemStack,
                          World par2World,
                          EntityPlayer par3EntityPlayer)

    - #### getItemStackLimit

          public int getItemStackLimit()

      Returns the maximum size of the stack for a specific item. *Isn't this more a Set than a Get?*

    - #### getMetadata

          public int getMetadata(int par1)

      Returns the metadata of the block which this Item (ItemBlock) can place

    - #### getHasSubtypes

          public boolean getHasSubtypes()

    - #### getMaxDamage

          public int getMaxDamage()

      Returns the maximum damage an item can take.

    - #### setMaxDamage

          public Item setMaxDamage(int par1)

      set max damage of an Item

    - #### isDamageable

          public boolean isDamageable()

    - #### hitEntity

          public boolean hitEntity(ItemStack par1ItemStack,
                          EntityLivingBase par2EntityLivingBase,
                          EntityLivingBase par3EntityLivingBase)

      Current implementations of this method in child classes do not use the entry argument beside ev. They just raise the damage on the stack.

    - #### onBlockDestroyed

          public boolean onBlockDestroyed(ItemStack par1ItemStack,
                                 World par2World,
                                 int par3,
                                 int par4,
                                 int par5,
                                 int par6,
                                 EntityLivingBase par7EntityLivingBase)

    - #### canHarvestBlock

          public boolean canHarvestBlock(Block par1Block)

      Returns if the item (tool) can harvest results from the block type.

    - #### itemInteractionForEntity

          public boolean itemInteractionForEntity(ItemStack par1ItemStack,
                                         EntityPlayer par2EntityPlayer,
                                         EntityLivingBase par3EntityLivingBase)

      Returns true if the item can be used on the given entity, e.g. shears on sheep.

    - #### setFull3D

          public Item setFull3D()

      Sets bFull3D to True and return the object.

    - #### isFull3D

          public boolean isFull3D()

    - #### shouldRotateAroundWhenRendering

          public boolean shouldRotateAroundWhenRendering()

    - #### setUnlocalizedName

          public Item setUnlocalizedName(String par1Str)

      Sets the unlocalized name of this item to the string passed as the parameter, prefixed by "item."

    - #### getUnlocalizedNameInefficiently

          public String getUnlocalizedNameInefficiently(ItemStack par1ItemStack)

      Translates the unlocalized name of this item, but without the .name suffix, so the translation fails and the unlocalized name itself is returned.

    - #### getUnlocalizedName

          public String getUnlocalizedName()

      Returns the unlocalized name of this item.

    - #### getUnlocalizedName

          public String getUnlocalizedName(ItemStack par1ItemStack)

      Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have different names based on their damage or NBT.

    - #### setContainerItem

          public Item setContainerItem(Item par1Item)

    - #### doesContainerItemLeaveCraftingGrid

          public boolean doesContainerItemLeaveCraftingGrid(ItemStack par1ItemStack)

      If this returns true, after a recipe involving this item is crafted the container item will be added to the player's inventory instead of remaining in the crafting grid.

    - #### getShareTag

          public boolean getShareTag()

      If this function returns true (or the item is damageable), the ItemStack's NBT tag will be sent to the client.

    - #### getContainerItem

          public Item getContainerItem()

    - #### hasContainerItem

          public boolean hasContainerItem()

      True if this Item has a container item (a.k.a. crafting result)

    - #### getStatName

          public String getStatName()

    - #### getItemStackDisplayName

          public String getItemStackDisplayName(ItemStack par1ItemStack)

    - #### getColorFromItemStack

          public int getColorFromItemStack(ItemStack par1ItemStack,
                                  int par2)

    - #### onUpdate

          public void onUpdate(ItemStack par1ItemStack,
                      World par2World,
                      Entity par3Entity,
                      int par4,
                      boolean par5)

      Called each tick as long the item is on a player inventory. Uses by maps to check if is on a player hand and update it's contents.

    - #### onCreated

          public void onCreated(ItemStack par1ItemStack,
                       World par2World,
                       EntityPlayer par3EntityPlayer)

      Called when item is crafted/smelted. Used only by maps so far.

    - #### isMap

          public boolean isMap()

      false for all Items except sub-classes of ItemMapBase

    - #### getItemUseAction

          public EnumAction getItemUseAction(ItemStack par1ItemStack)

      returns the action that specifies what animation to play when the items is being used

    - #### getMaxItemUseDuration

          public int getMaxItemUseDuration(ItemStack par1ItemStack)

      How long it takes to use or consume an item

    - #### onPlayerStoppedUsing

          public void onPlayerStoppedUsing(ItemStack par1ItemStack,
                                  World par2World,
                                  EntityPlayer par3EntityPlayer,
                                  int par4)

      called when the player releases the use item button. Args: itemstack, world, entityplayer, itemInUseCount

    - #### setPotionEffect

          public Item setPotionEffect(String par1Str)

      Sets the string representing this item's effect on a potion when used as an ingredient.

    - #### getPotionEffect

          public String getPotionEffect()

      Returns a string representing what this item does to a potion.

    - #### isPotionIngredient

          public boolean isPotionIngredient()

      Returns true if this item serves as a potion ingredient (its ingredient information is not null).

    - #### addInformation

          public void addInformation(ItemStack par1ItemStack,
                            EntityPlayer par2EntityPlayer,
                            List par3List,
                            boolean par4)

    - #### getItemDisplayName

          public String getItemDisplayName(ItemStack par1ItemStack)

    - #### hasEffect

          @Deprecated
          public boolean hasEffect(ItemStack par1ItemStack)

      Deprecated.

    - #### getRarity

          public EnumRarity getRarity(ItemStack par1ItemStack)

    - #### isItemTool

          public boolean isItemTool(ItemStack par1ItemStack)

      Checks isDamagable and if it cannot be stacked

    - #### getItemEnchantability

          public int getItemEnchantability()

      Return the enchantability factor of the item, most of the time is based on material.

    - #### requiresMultipleRenderPasses

          public boolean requiresMultipleRenderPasses()

    - #### getIconFromDamageForRenderPass

          public Icon getIconFromDamageForRenderPass(int par1,
                                            int par2)

    - #### getSubItems

          public void getSubItems(int par1,
                         CreativeTabs par2CreativeTabs,
                         List par3List)

    - #### setCreativeTab

          public Item setCreativeTab(CreativeTabs par1CreativeTabs)

      returns this;

    - #### getCreativeTab

          public CreativeTabs getCreativeTab()

    - #### canItemEditBlocks

          public boolean canItemEditBlocks()

      Returns true if players can use this item to affect the world (e.g. placing blocks, placing ender eyes in portal) when not in creative

    - #### getIsRepairable

          public boolean getIsRepairable(ItemStack par1ItemStack,
                                ItemStack par2ItemStack)

      Return whether this item is repairable in an anvil.

    - #### registerIcons

          public void registerIcons(IconRegister par1IconRegister)

    - #### getItemAttributeModifiers

          public com.google.common.collect.Multimap getItemAttributeModifiers()

      Gets a map of item attribute modifiers, used by ItemSword to increase hit damage.

    - #### setTextureName

          public Item setTextureName(String par1Str)

    - #### onDroppedByPlayer

          public boolean onDroppedByPlayer(ItemStack item,
                                  EntityPlayer player)

      Called when a player drops the item into the world, returning false from this will prevent the item from being removed from the players inventory and spawning in the world
      Parameters:
        `player` - The player that dropped the item
        `item` - The item stack, before the item is removed.

    - #### onItemUseFirst

          public boolean onItemUseFirst(ItemStack stack,
                               EntityPlayer player,
                               World world,
                               int x,
                               int y,
                               int z,
                               int side,
                               float hitX,
                               float hitY,
                               float hitZ)

      This is called when the item is used, before the block is activated.
      Parameters:
        `stack` - The Item Stack
        `player` - The Player that used the item
        `world` - The Current World
        `x` - Target X Position
        `y` - Target Y Position
        `z` - Target Z Position
        `side` - The side of the target hit
      Returns:
        Return true to prevent any further processing.

    - #### getStrVsBlock

          public float getStrVsBlock(ItemStack itemstack,
                            Block block,
                            int metadata)

      Metadata-sensitive version of getStrVsBlock
      Parameters:
        `itemstack` - The Item Stack
        `block` - The block the item is trying to break
        `metadata` - The items current metadata
      Returns:
        The damage strength

    - #### isRepairable

          public boolean isRepairable()

      Called by CraftingManager to determine if an item is reparable.
      Returns:
        True if reparable

    - #### setNoRepair

          public Item setNoRepair()

      Call to disable repair recipes.
      Returns:
        The current Item instance

    - #### onBlockStartBreak

          public boolean onBlockStartBreak(ItemStack itemstack,
                                  int X,
                                  int Y,
                                  int Z,
                                  EntityPlayer player)

      Called before a block is broken. Return true to prevent default block harvesting. Note: In SMP, this is called on both client and server sides!
      Parameters:
        `itemstack` - The current ItemStack
        `X` - The X Position
        `Y` - The X Position
        `Z` - The X Position
        `player` - The Player that is wielding the item
      Returns:
        True to prevent harvesting, false to continue as normal

    - #### onUsingItemTick

          public void onUsingItemTick(ItemStack stack,
                             EntityPlayer player,
                             int count)

      Called each tick while using an item.
      Parameters:
        `stack` - The Item being used
        `player` - The Player using the item
        `count` - The amount of time in tick the item has been used for continuously

    - #### onLeftClickEntity

          public boolean onLeftClickEntity(ItemStack stack,
                                  EntityPlayer player,
                                  Entity entity)

      Called when the player Left Clicks (attacks) an entity. Processed before damage is done, if return value is true further processing is canceled and the entity is not attacked.
      Parameters:
        `stack` - The Item being used
        `player` - The player that is attacking
        `entity` - The entity being attacked
      Returns:
        True to cancel the rest of the interaction.

    - #### getIcon

          public Icon getIcon(ItemStack stack,
                     int renderPass,
                     EntityPlayer player,
                     ItemStack usingItem,
                     int useRemaining)

      Player, Render pass, and item usage sensitive version of getIconIndex.
      Parameters:
        `stack` - The item stack to get the icon for. (Usually this, and usingItem will be the same if usingItem is not null)
        `renderPass` - The pass to get the icon for, 0 is default.
        `player` - The player holding the item
        `usingItem` - The item the player is actively using. Can be null if not using anything.
        `useRemaining` - The ticks remaining for the active item.
      Returns:
        The icon index

    - #### getRenderPasses

          public int getRenderPasses(int metadata)

      Returns the number of render passes/layers this item has. Usually equates to ItemRenderer.renderItem being called for this many passes. Does not get called unless requiresMultipleRenderPasses() is true;
      Parameters:
        `metadata` - The item's metadata
      Returns:
        The number of passes to run.

    - #### getContainerItemStack

          public ItemStack getContainerItemStack(ItemStack itemStack)

      ItemStack sensitive version of getContainerItem. Returns a full ItemStack instance of the result.
      Parameters:
        `itemStack` - The current ItemStack
      Returns:
        The resulting ItemStack

    - #### getEntityLifespan

          public int getEntityLifespan(ItemStack itemStack,
                              World world)

      Retrieves the normal 'lifespan' of this item when it is dropped on the ground as a EntityItem. This is in ticks, standard result is 6000, or 5 mins.
      Parameters:
        `itemStack` - The current ItemStack
        `world` - The world the entity is in
      Returns:
        The normal lifespan in ticks.

    - #### hasCustomEntity

          public boolean hasCustomEntity(ItemStack stack)

      Determines if this Item has a special entity for when they are in the world. Is called when a EntityItem is spawned in the world, if true and Item#createCustomEntity returns non null, the EntityItem will be destroyed and the new Entity will be added to the world.
      Parameters:
        `stack` - The current item stack
      Returns:
        True of the item has a custom entity, If true, Item#createCustomEntity will be called

    - #### createEntity

          public Entity createEntity(World world,
                            Entity location,
                            ItemStack itemstack)

      This function should return a new entity to replace the dropped item. Returning null here will not kill the EntityItem and will leave it to function normally. Called when the item it placed in a world.
      Parameters:
        `world` - The world object
        `location` - The EntityItem object, useful for getting the position of the entity
        `itemstack` - The current item stack
      Returns:
        A new Entity object to spawn or null

    - #### onEntityItemUpdate

          public boolean onEntityItemUpdate(EntityItem entityItem)

      Called by the default implemetation of EntityItem's onUpdate method, allowing for cleaner control over the update of the item without having to write a subclass.
      Parameters:
        `entityItem` - The entity Item
      Returns:
        Return true to skip any further update code.

    - #### getCreativeTabs

          public CreativeTabs[] getCreativeTabs()

      Gets a list of tabs that items belonging to this class can display on, combined properly with getSubItems allows for a single item to span many sub-items across many tabs.
      Returns:
        A list of all tabs that this item could possibly be one.

    - #### getSmeltingExperience

          public float getSmeltingExperience(ItemStack item)

      Determines the base experience for a player when they remove this item from a furnace slot. This number must be between 0 and 1 for it to be valid. This number will be multiplied by the stack size to get the total experience.
      Parameters:
        `item` - The item stack the player is picking up.
      Returns:
        The amount to award for each item.

    - #### getIcon

          public Icon getIcon(ItemStack stack,
                     int pass)

      Return the correct icon for rendering based on the supplied ItemStack and render pass. Defers to `getIconFromDamageForRenderPass(int, int)`
      Parameters:
        `stack` - to render for
        `pass` - the multi-render pass
      Returns:
        the icon

    - #### getChestGenBase

          public WeightedRandomChestContent getChestGenBase(ChestGenHooks chest,
                                                   Random rnd,
                                                   WeightedRandomChestContent original)

      Generates the base Random item for a specific instance of the chest gen, Enchanted books use this to pick a random enchantment.
      Parameters:
        `chest` - The chest category to generate for
        `rnd` - World RNG
        `original` - Original result registered with the chest gen hooks.
      Returns:
        New values to use as the random item, typically this will be original

    - #### shouldPassSneakingClickToBlock

          public boolean shouldPassSneakingClickToBlock(World par2World,
                                               int par4,
                                               int par5,
                                               int par6)

      Should this item, when held, allow sneak-clicks to pass through to the underlying block?
      Parameters:
        `par2World` -
        `par4` -
        `par5` -
        `par6` -
      Returns:

    - #### onArmorTickUpdate

          public void onArmorTickUpdate(World world,
                               EntityPlayer player,
                               ItemStack itemStack)

      Called to tick armor in the armor slot. Override to do something
      Parameters:
        `world` -
        `player` -
        `itemStack` -

    - #### isValidArmor

          public boolean isValidArmor(ItemStack stack,
                             int armorType,
                             Entity entity)

      Determines if the specific ItemStack can be placed in the specified armor slot.
      Parameters:
        `stack` - The ItemStack
        `armorType` - Armor slot ID: 0: Helmet, 1: Chest, 2: Legs, 3: Boots
        `entity` - The entity trying to equip the armor
      Returns:
        True if the given ItemStack can be inserted in the slot

    - #### isPotionIngredient

          public boolean isPotionIngredient(ItemStack stack)

      ItemStack sensitive version of isPotionIngredient
      Parameters:
        `stack` - The item stack
      Returns:
        True if this stack can be used as a potion ingredient

    - #### getPotionEffect

          public String getPotionEffect(ItemStack stack)

      ItemStack sensitive version of getPotionEffect
      Parameters:
        `stack` - The item stack
      Returns:
        A string containing the bit manipulation to apply the the potion.

    - #### isBookEnchantable

          public boolean isBookEnchantable(ItemStack itemstack1,
                                  ItemStack itemstack2)

      Allow or forbid the specific book/item combination as an anvil enchant
      Parameters:
        `itemstack1` - The item
        `itemstack2` - The book
      Returns:
        if the enchantment is allowed

    - #### getDamageVsEntity

          @Deprecated
          public float getDamageVsEntity(Entity par1Entity,
                                           ItemStack itemStack)

      Deprecated.
      An itemstack sensitive version of getDamageVsEntity - allows items to handle damage based on itemstack data, like tags. Falls back to getDamageVsEntity.
      Parameters:
        `par1Entity` - The entity being attacked (or the attacking mob, if it's a mob - vanilla bug?)
        `itemStack` - The itemstack
      Returns:
        the damage

    - #### getArmorTexture

          @Deprecated
          public String getArmorTexture(ItemStack stack,
                                          Entity entity,
                                          int slot,
                                          int layer)

      Deprecated.
      Called by RenderBiped and RenderPlayer to determine the armor texture that should be use for the currently equiped item. This will only be called on instances of ItemArmor. Returning null from this function will use the default value.
      Parameters:
        `stack` - ItemStack for the equpt armor
        `entity` - The entity wearing the armor
        `slot` - The slot the armor is in
        `layer` - The render layer, either 1 or 2, 2 is only used for CLOTH armor by default
      Returns:
        Path of texture to bind, or null to use default

    - #### getArmorTexture

          public String getArmorTexture(ItemStack stack,
                               Entity entity,
                               int slot,
                               String type)

      Called by RenderBiped and RenderPlayer to determine the armor texture that should be use for the currently equiped item. This will only be called on instances of ItemArmor. Returning null from this function will use the default value.
      Parameters:
        `stack` - ItemStack for the equpt armor
        `entity` - The entity wearing the armor
        `slot` - The slot the armor is in
        `type` - The subtype, can be null or "overlay"
      Returns:
        Path of texture to bind, or null to use default

    - #### getFontRenderer

          public FontRenderer getFontRenderer(ItemStack stack)

      Returns the font renderer used to render tooltips and overlays for this item. Returning null will use the standard font renderer.
      Parameters:
        `stack` - The current item stack
      Returns:
        A instance of FontRenderer or null to use default

    - #### getArmorModel

          public ModelBiped getArmorModel(EntityLivingBase entityLiving,
                                 ItemStack itemStack,
                                 int armorSlot)

      Override this method to have an item handle its own armor rendering.
      Parameters:
        `entityLiving` - The entity wearing the armor
        `itemStack` - The itemStack to render the model of
        `armorSlot` - 0=head, 1=torso, 2=legs, 3=feet
      Returns:
        A ModelBiped to render instead of the default

    - #### onEntitySwing

          public boolean onEntitySwing(EntityLivingBase entityLiving,
                              ItemStack stack)

      Called when a entity tries to play the 'swing' animation.
      Parameters:
        `entityLiving` - The entity swinging the item.
        `stack` - The Item stack
      Returns:
        True to cancel any further processing by EntityLiving

    - #### renderHelmetOverlay

          public void renderHelmetOverlay(ItemStack stack,
                                 EntityPlayer player,
                                 ScaledResolution resolution,
                                 float partialTicks,
                                 boolean hasScreen,
                                 int mouseX,
                                 int mouseY)

      Called when the client starts rendering the HUD, for whatever item the player currently has as a helmet. This is where pumpkins would render there overlay.
      Parameters:
        `stack` - The ItemStack that is equipped
        `player` - Reference to the current client entity
        `resolution` - Resolution information about the current viewport and configured GUI Scale
        `partialTicks` - Partial ticks for the renderer, useful for interpolation
        `hasScreen` - If the player has a screen up, which will be rendered after this.
        `mouseX` - Mouse's X position on screen
        `mouseY` - Mouse's Y position on screen

    - #### getDamage

          public int getDamage(ItemStack stack)

      Return the itemDamage represented by this ItemStack. Defaults to the itemDamage field on ItemStack, but can be overridden here for other sources such as NBT.
      Parameters:
        `stack` - The itemstack that is damaged
      Returns:
        the damage value

    - #### getDisplayDamage

          public int getDisplayDamage(ItemStack stack)

      Return the itemDamage display value represented by this itemstack.
      Parameters:
        `stack` - the stack
      Returns:
        the damage value

    - #### getMaxDamage

          public int getMaxDamage(ItemStack stack)

      Return the maxDamage for this ItemStack. Defaults to the maxDamage field in this item, but can be overridden here for other sources such as NBT.
      Parameters:
        `stack` - The itemstack that is damaged
      Returns:
        the damage value

    - #### isDamaged

          public boolean isDamaged(ItemStack stack)

      Return if this itemstack is damaged. Note only called if `isDamageable()` is true.
      Parameters:
        `stack` - the stack
      Returns:
        if the stack is damaged

    - #### setDamage

          public void setDamage(ItemStack stack,
                       int damage)

      Set the damage for this itemstack. Note, this method is responsible for zero checking.
      Parameters:
        `stack` - the stack
        `damage` - the new damage value

    - #### canHarvestBlock

          public boolean canHarvestBlock(Block par1Block,
                                ItemStack itemStack)

      ItemStack sensitive version of `canHarvestBlock(Block)`
      Parameters:
        `par1Block` - The block trying to harvest
        `itemStack` - The itemstack used to harvest the block
      Returns:
        true if can harvest the block

    - #### hasEffect

          public boolean hasEffect(ItemStack par1ItemStack,
                          int pass)

      Render Pass sensitive version of hasEffect()