001 package net.minecraft.src;
002
003 public class ItemGlassBottle extends Item
004 {
005 public ItemGlassBottle(int par1)
006 {
007 super(par1);
008 this.setCreativeTab(CreativeTabs.tabBrewing);
009 }
010
011 /**
012 * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
013 */
014 public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
015 {
016 MovingObjectPosition var4 = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, true);
017
018 if (var4 == null)
019 {
020 return par1ItemStack;
021 }
022 else
023 {
024 if (var4.typeOfHit == EnumMovingObjectType.TILE)
025 {
026 int var5 = var4.blockX;
027 int var6 = var4.blockY;
028 int var7 = var4.blockZ;
029
030 if (!par2World.canMineBlock(par3EntityPlayer, var5, var6, var7))
031 {
032 return par1ItemStack;
033 }
034
035 if (!par3EntityPlayer.func_82247_a(var5, var6, var7, var4.sideHit, par1ItemStack))
036 {
037 return par1ItemStack;
038 }
039
040 if (par2World.getBlockMaterial(var5, var6, var7) == Material.water)
041 {
042 --par1ItemStack.stackSize;
043
044 if (par1ItemStack.stackSize <= 0)
045 {
046 return new ItemStack(Item.potion);
047 }
048
049 if (!par3EntityPlayer.inventory.addItemStackToInventory(new ItemStack(Item.potion)))
050 {
051 par3EntityPlayer.dropPlayerItem(new ItemStack(Item.potion.shiftedIndex, 1, 0));
052 }
053 }
054 }
055
056 return par1ItemStack;
057 }
058 }
059 }