package net.minecraft.item; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.EnumMovingObjectType; import net.minecraft.util.Icon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; public class ItemGlassBottle extends Item { public ItemGlassBottle(int par1) { super(par1); this.setCreativeTab(CreativeTabs.tabBrewing); } @SideOnly(Side.CLIENT) /** * Gets an icon index based on an item's damage value */ public Icon getIconFromDamage(int par1) { return Item.potion.getIconFromDamage(0); } /** * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer */ public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, true); if (movingobjectposition == null) { return par1ItemStack; } else { if (movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!par2World.canMineBlock(par3EntityPlayer, i, j, k)) { return par1ItemStack; } if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, par1ItemStack)) { return par1ItemStack; } if (par2World.getBlockMaterial(i, j, k) == Material.water) { --par1ItemStack.stackSize; if (par1ItemStack.stackSize <= 0) { return new ItemStack(Item.potion); } if (!par3EntityPlayer.inventory.addItemStackToInventory(new ItemStack(Item.potion))) { par3EntityPlayer.dropPlayerItem(new ItemStack(Item.potion.itemID, 1, 0)); } } } return par1ItemStack; } } @SideOnly(Side.CLIENT) public void registerIcons(IconRegister par1IconRegister) {} }