public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer entityplayer) { MovingObjectPosition movingobjectposition = func_40402_a(world, entityplayer, true); if (movingobjectposition == null) { return itemstack; } if (movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!world.canMineBlock(entityplayer, i, j, k)) { return itemstack; } if (!entityplayer.canPlayerEdit(i, j, k)) { return itemstack; } if (world.getBlockMaterial(i, j, k) == Material.water) { itemstack.stackSize--; if (itemstack.stackSize <= 0) { return new ItemStack(Item.potion); } if (!entityplayer.inventory.addItemStackToInventory(new ItemStack(Item.potion))) { entityplayer.dropPlayerItem(new ItemStack(Item.potion.shiftedIndex, 1, 0)); } } } return itemstack; }
public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer entityplayer) { MovingObjectPosition movingobjectposition = func_40402_a(world, entityplayer, true); if (movingobjectposition == null) { return itemstack; } if (movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!world.canMineBlock(entityplayer, i, j, k)) { return itemstack; } if (!entityplayer.func_35190_e(i, j, k)) { return itemstack; } if (world.getBlockMaterial(i, j, k) == Material.water && world.getBlockMetadata(i, j, k) == 0 && world.isAirBlock(i, j + 1, k)) { world.setBlockWithNotify(i, j + 1, k, Block.waterlily.blockID); if (!entityplayer.capabilities.depleteBuckets) { itemstack.stackSize--; } } } return itemstack; }
/** * 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 var4 = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, true); if (var4 == null) { return par1ItemStack; } else { if (var4.typeOfHit == EnumMovingObjectType.TILE) { int var5 = var4.blockX; int var6 = var4.blockY; int var7 = var4.blockZ; if (!par2World.canMineBlock(par3EntityPlayer, var5, var6, var7)) { return par1ItemStack; } if (!par3EntityPlayer.canPlayerEdit(var5, var6, var7)) { return par1ItemStack; } if (par2World.getBlockMaterial(var5, var6, var7) == 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.shiftedIndex, 1, 0)); } } } return par1ItemStack; } }
/** * 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) { float var4 = 1.0F; double var5 = par3EntityPlayer.prevPosX + (par3EntityPlayer.posX - par3EntityPlayer.prevPosX) * (double) var4; double var7 = par3EntityPlayer.prevPosY + (par3EntityPlayer.posY - par3EntityPlayer.prevPosY) * (double) var4 + 1.62D - (double) par3EntityPlayer.yOffset; double var9 = par3EntityPlayer.prevPosZ + (par3EntityPlayer.posZ - par3EntityPlayer.prevPosZ) * (double) var4; boolean var11 = this.isFull == 0; MovingObjectPosition var12 = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, var11); if (var12 == null) { return par1ItemStack; } else { if (var12.typeOfHit == EnumMovingObjectType.TILE) { int var13 = var12.blockX; int var14 = var12.blockY; int var15 = var12.blockZ; if (!par2World.canMineBlock(par3EntityPlayer, var13, var14, var15)) { return par1ItemStack; } if (this.isFull == 0) { if (!par3EntityPlayer.canPlayerEdit(var13, var14, var15, var12.sideHit, par1ItemStack)) { return par1ItemStack; } if (par2World.getBlockMaterial(var13, var14, var15) == Material.water && par2World.getBlockMetadata(var13, var14, var15) == 0) { par2World.setBlockToAir(var13, var14, var15); if (par3EntityPlayer.capabilities.isCreativeMode) { return par1ItemStack; } if (--par1ItemStack.stackSize <= 0) { return new ItemStack(Item.bucketWater); } if (!par3EntityPlayer.inventory.addItemStackToInventory( new ItemStack(Item.bucketWater))) { par3EntityPlayer.dropPlayerItem(new ItemStack(Item.bucketWater.itemID, 1, 0)); } return par1ItemStack; } if (par2World.getBlockMaterial(var13, var14, var15) == Material.lava && par2World.getBlockMetadata(var13, var14, var15) == 0) { par2World.setBlockToAir(var13, var14, var15); if (par3EntityPlayer.capabilities.isCreativeMode) { return par1ItemStack; } if (--par1ItemStack.stackSize <= 0) { return new ItemStack(Item.bucketLava); } if (!par3EntityPlayer.inventory.addItemStackToInventory( new ItemStack(Item.bucketLava))) { par3EntityPlayer.dropPlayerItem(new ItemStack(Item.bucketLava.itemID, 1, 0)); } return par1ItemStack; } } else { if (this.isFull < 0) { return new ItemStack(Item.bucketEmpty); } if (var12.sideHit == 0) { --var14; } if (var12.sideHit == 1) { ++var14; } if (var12.sideHit == 2) { --var15; } if (var12.sideHit == 3) { ++var15; } if (var12.sideHit == 4) { --var13; } if (var12.sideHit == 5) { ++var13; } if (!par3EntityPlayer.canPlayerEdit(var13, var14, var15, var12.sideHit, par1ItemStack)) { return par1ItemStack; } if (this.tryPlaceContainedLiquid(par2World, var5, var7, var9, var13, var14, var15) && !par3EntityPlayer.capabilities.isCreativeMode) { return new ItemStack(Item.bucketEmpty); } } } else if (this.isFull == 0 && var12.entityHit instanceof EntityCow) { return new ItemStack(Item.bucketMilk); } return par1ItemStack; } }
public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer player) { float var4 = 1.0F; double var5 = player.prevPosX + (player.posX - player.prevPosX) * (double) var4; double var7 = player.prevPosY + (player.posY - player.prevPosY) * (double) var4 + 1.62D - (double) player.yOffset; double var9 = player.prevPosZ + (player.posZ - player.prevPosZ) * (double) var4; boolean var11 = this.isFull == 0; MovingObjectPosition mop = this.getMovingObjectPositionFromPlayer(world, player, var11); if (mop == null) { return itemstack; } if (mop.typeOfHit == EnumMovingObjectType.TILE) { int x = mop.blockX; int y = mop.blockY; int z = mop.blockZ; if (!world.canMineBlock(player, x, y, z)) { return itemstack; } if (isFull == 0) { int bID = world.getBlockId(x, y, z); if ((bID == Block.waterMoving.blockID || bID == Block.waterStill.blockID) && world.getBlockMetadata(x, y, z) == 0) { world.setBlockWithNotify(x, y, z, 0); return new ItemStack(mod_InfiTools.goldBucketWater); } if ((bID == Block.lavaMoving.blockID || bID == Block.lavaStill.blockID) && world.getBlockMetadata(x, y, z) == 0) { world.setBlockWithNotify(x, y, z, 0); return new ItemStack(mod_InfiTools.goldBucketLava); } if (bID == Block.sand.blockID) { world.setBlockWithNotify(x, y, z, 0); return new ItemStack(mod_InfiTools.goldBucketSand); } if (bID == Block.gravel.blockID) { world.setBlockWithNotify(x, y, z, 0); return new ItemStack(mod_InfiTools.goldBucketGravel); } } else { if (isFull < 0) { return new ItemStack(mod_InfiTools.goldBucketEmpty); } if (mop.sideHit == 0) { y--; } if (mop.sideHit == 1) { y++; } if (mop.sideHit == 2) { z--; } if (mop.sideHit == 3) { z++; } if (mop.sideHit == 4) { x--; } if (mop.sideHit == 5) { x++; } if (world.isAirBlock(x, y, z) || !world.getBlockMaterial(x, y, z).isSolid()) { if (world.worldProvider.isHellWorld && isFull == Block.waterMoving.blockID) { world.playSoundEffect( x + 0.5D, y + 0.5D, z + 0.5D, "random.fizz", 0.5F, 2.6F + (world.rand.nextFloat() - world.rand.nextFloat()) * 0.8F); for (int l = 0; l < 8; l++) { world.spawnParticle( "largesmoke", (double) x + Math.random(), (double) y + Math.random(), (double) z + Math.random(), 0.0D, 0.0D, 0.0D); } } else { world.setBlockAndMetadataWithNotify(x, y, z, isFull, 0); } return new ItemStack(mod_InfiTools.goldBucketEmpty); } } } else if (isFull == 0 && (mop.entityHit instanceof EntityCow)) { return new ItemStack(mod_InfiTools.goldBucketMilk); } return itemstack; }