List of usage examples for net.minecraftforge.event.entity.player FillBucketEvent FillBucketEvent
public FillBucketEvent(PlayerEntity player, @Nonnull ItemStack current, World world,
@Nullable RayTraceResult target)
From source file:advancedbrewing.item.ItemBucketPotion.java
License:Minecraft Mod Public
@Override public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, false);/*from w w w . j av a 2s . c o m*/ if (movingobjectposition == null) { return par1ItemStack; } else { FillBucketEvent event = new FillBucketEvent(par3EntityPlayer, par1ItemStack, par2World, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return par1ItemStack; } if (event.getResult() == Event.Result.ALLOW) { if (par3EntityPlayer.capabilities.isCreativeMode) { return par1ItemStack; } if (--par1ItemStack.stackSize <= 0) { return event.result; } if (!par3EntityPlayer.inventory.addItemStackToInventory(event.result)) { par3EntityPlayer.dropPlayerItem(event.result); } return par1ItemStack; } 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 (movingobjectposition.sideHit == 0) { --j; } if (movingobjectposition.sideHit == 1) { ++j; } if (movingobjectposition.sideHit == 2) { --k; } if (movingobjectposition.sideHit == 3) { ++k; } if (movingobjectposition.sideHit == 4) { --i; } if (movingobjectposition.sideHit == 5) { ++i; } if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, par1ItemStack)) { return par1ItemStack; } if (this.tryPlaceContainedLiquid(par2World, i, j, k, par1ItemStack) && !par3EntityPlayer.capabilities.isCreativeMode) { return new ItemStack(Item.bucketEmpty); } } return par1ItemStack; } }
From source file:arekkuusu.grimoireOfAlice.item.ItemIbarakiBoxEmpty.java
License:Open Source License
@Override public ItemStack onItemRightClick(ItemStack stack_, World world, EntityPlayer player) { boolean flag = this.isFull == Blocks.air; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(world, player, flag); if (movingobjectposition == null) { return stack_; } else {/*from www . j a v a2 s . c o m*/ FillBucketEvent event = new FillBucketEvent(player, stack_, world, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return stack_; } if (event.getResult() == Event.Result.ALLOW) { if (player.capabilities.isCreativeMode) { return stack_; } if (--stack_.stackSize <= 0) { return event.result; } if (!player.inventory.addItemStackToInventory(event.result)) { player.dropPlayerItemWithRandomChoice(event.result, false); } return stack_; } if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!world.canMineBlock(player, i, j, k)) { return stack_; } if (flag) { if (!player.canPlayerEdit(i, j, k, movingobjectposition.sideHit, stack_)) { return stack_; } Material material = world.getBlock(i, j, k).getMaterial(); int l = world.getBlockMetadata(i, j, k); if (material == Material.water && l == 0) { world.setBlockToAir(i, j, k); return this.func_150910_a(stack_, player, GOAItem.ibarakiBoxFilled); } if (material == Material.lava && l == 0) { world.setBlockToAir(i, j, k); return this.func_150910_a(stack_, player, GOAItem.ibarakiBoxFilled); } } else { if (this.isFull == Blocks.air) { return new ItemStack(this); } } } return stack_; } }
From source file:com.savageboy74.savagetech.item.DiamondBucket.java
License:Open Source License
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player) { boolean flag = this.isFull == Blocks.air; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(world, player, flag); if (movingobjectposition == null) { return itemStack; } else {/*from w w w .j a v a 2s .c o m*/ FillBucketEvent event = new FillBucketEvent(player, itemStack, world, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return itemStack; } if (event.getResult() == Event.Result.ALLOW) { if (player.capabilities.isCreativeMode) { return itemStack; } if (--itemStack.stackSize <= 0) { return event.result; } if (!player.inventory.addItemStackToInventory(event.result)) { player.dropPlayerItemWithRandomChoice(event.result, false); } return itemStack; } if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!world.canMineBlock(player, i, j, k)) { return itemStack; } if (flag) { if (!player.canPlayerEdit(i, j, k, movingobjectposition.sideHit, itemStack)) { return itemStack; } Material material = world.getBlock(i, j, k).getMaterial(); int l = world.getBlockMetadata(i, j, k); if (material == Material.water && l == 0) { world.setBlockToAir(i, j, k); return this.func_150910_a(itemStack, player, ItemRegistry.diamondWaterBucket); } else if (material == Material.lava && l == 0) { world.setBlockToAir(i, j, k); return this.func_150910_a(itemStack, player, ItemRegistry.diamondLavaBucket); } } } return itemStack; } }
From source file:dokutoku.lead.zotonic.item.MagicBucket.java
License:Open Source License
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { float f = 1.0F; double d0 = par3EntityPlayer.prevPosX + (par3EntityPlayer.posX - par3EntityPlayer.prevPosX) * (double) f; double d1 = par3EntityPlayer.prevPosY + (par3EntityPlayer.posY - par3EntityPlayer.prevPosY) * (double) f + 1.62D - (double) par3EntityPlayer.yOffset; double d2 = par3EntityPlayer.prevPosZ + (par3EntityPlayer.posZ - par3EntityPlayer.prevPosZ) * (double) f; boolean flag = false; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, flag);/*from w ww .j av a 2s .c om*/ if (movingobjectposition == null) { return par1ItemStack; } FillBucketEvent event = new FillBucketEvent(par3EntityPlayer, par1ItemStack, par2World, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return par1ItemStack; } if (event.getResult() == Event.Result.ALLOW) { if (par3EntityPlayer.capabilities.isCreativeMode) { return par1ItemStack; } if (--par1ItemStack.stackSize <= 0) { return event.result; } if (!par3EntityPlayer.inventory.addItemStackToInventory(event.result)) { par3EntityPlayer.dropPlayerItem(event.result); } return par1ItemStack; } if (movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (par2World.getBlockMaterial(i, j, k) == Material.water) { System.out.println("True"); } if (movingobjectposition.sideHit == 0) { --j; } if (movingobjectposition.sideHit == 1) { ++j; } if (movingobjectposition.sideHit == 2) { --k; } if (movingobjectposition.sideHit == 3) { ++k; } if (movingobjectposition.sideHit == 4) { --i; } if (movingobjectposition.sideHit == 5) { ++i; } if (par2World.getBlockMaterial(i, j, k).isLiquid() && par2World.getBlockMetadata(i, j, k) == 0) { par2World.setBlockToAir(i, j, k); } else { if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, par1ItemStack)) { return par1ItemStack; } if (this.tryPlaceContainedLiquid(par2World, d0, d1, d2, i, j, k) && !par3EntityPlayer.capabilities.isCreativeMode) { return new ItemStack(this); } } } return par1ItemStack; }
From source file:EJ.Fluids.emeraldFluidBucket.java
License:LGPL
@Override public ItemStack onItemRightClick(ItemStack item, World world, EntityPlayer player) { // TODO Auto-generated method stub MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(world, player, true); if (movingobjectposition == null) { return item; } else {//from w w w . jav a 2 s .com FillBucketEvent event = new FillBucketEvent(player, item, world, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return item; } if (event.getResult() == Event.Result.ALLOW) { if (player.capabilities.isCreativeMode) { return item; } if (--item.stackSize <= 0) { return event.result; } if (!player.inventory.addItemStackToInventory(event.result)) { player.dropPlayerItem(event.result); } return item; } if (movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int x = movingobjectposition.blockX; int y = movingobjectposition.blockY; int z = movingobjectposition.blockZ; if (!world.canMineBlock(player, x, y, z)) { return item; } if (movingobjectposition.sideHit == 0) { --y; } if (movingobjectposition.sideHit == 1) { ++y; } if (movingobjectposition.sideHit == 2) { --z; } if (movingobjectposition.sideHit == 3) { ++z; } if (movingobjectposition.sideHit == 4) { --x; } if (movingobjectposition.sideHit == 5) { ++x; } if (!player.canPlayerEdit(x, y, z, movingobjectposition.sideHit, item)) { return item; } if (this.tryPlaceContainedLiquid(world, x, y, z) && !player.capabilities.isCreativeMode) { return new ItemStack(Item.bucketEmpty); } } return item; } }
From source file:emris.bctfccrossover.items.ItemBuckets.java
License:Open Source License
@Override public ItemStack onItemRightClick(ItemStack bucket, World world, EntityPlayer player) { MovingObjectPosition mop = PlayerUtils.getTargetBlock(player); if (mop != null) { int X = mop.blockX; int Y = mop.blockY; int Z = mop.blockZ; if (!world.canMineBlock(player, X, Y, Z)) { return bucket; }/* w ww.ja va 2 s . c o m*/ if (mop.typeOfHit == MovingObjectType.BLOCK) { if (bucket.getItemDamage() == 1 || bucket.getItemDamage() == 5) { if (!player.canPlayerEdit(X, Y, Z, mop.sideHit, bucket)) return bucket; FillBucketEvent event = new FillBucketEvent(player, bucket, world, mop); if (event.isCanceled()) return bucket; Block fluid = world.getBlock(X, Y, Z); //Pickup Salt Water if (isSaltWater(fluid) && bucket.getItemDamage() == 1) { if (!player.capabilities.isCreativeMode) world.setBlockToAir(X, Y, Z); return new ItemStack(BCTFCItems.Buckets, 1, 2); } //Pickup Fresh Water else if (isFreshWater(fluid) && bucket.getItemDamage() == 1) { if (!player.capabilities.isCreativeMode) world.setBlockToAir(X, Y, Z); return new ItemStack(BCTFCItems.Buckets, 1, 3); } //Pickup Hot Water else if (isHotWater(fluid) && bucket.getItemDamage() == 1) { ItemStack hotBucket = new ItemStack(BCTFCItems.Buckets, 1, 4); NBTTagCompound nbttc = new NBTTagCompound(); nbttc.setFloat("temperature", 480); hotBucket.setTagCompound(nbttc); if (!player.capabilities.isCreativeMode) world.setBlockToAir(X, Y, Z); return hotBucket; } //Pickup Oil else if (fluid == BuildCraftEnergy.blockOil && bucket.getItemDamage() == 5) { if (!player.capabilities.isCreativeMode) world.setBlockToAir(X, Y, Z); return new ItemStack(BCTFCItems.Buckets, 1, 6); } //Pickup Fuel else if (fluid == BuildCraftEnergy.blockFuel && bucket.getItemDamage() == 5) { if (!player.capabilities.isCreativeMode) world.setBlockToAir(X, Y, Z); return new ItemStack(BCTFCItems.Buckets, 1, 7); } } if (bucket.getItemDamage() == 2 || bucket.getItemDamage() == 3 || bucket.getItemDamage() == 4) { if (mop.sideHit == 0) { --Y; } else if (mop.sideHit == 1) { ++Y; } else if (mop.sideHit == 2) { --Z; } else if (mop.sideHit == 3) { ++Z; } else if (mop.sideHit == 4) { --X; } else if (mop.sideHit == 5) { ++X; } if (!player.canPlayerEdit(X, Y, Z, mop.sideHit, bucket)) return bucket; if (world.isAirBlock(X, Y, Z) || !world.getBlock(X, Y, Z).getMaterial().isSolid()) { if (world.provider.isHellWorld && bucket.getItemDamage() == 2) { 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 i = 0; i < 8; ++i) world.spawnParticle("largesmoke", X + Math.random(), Y + Math.random(), Z + Math.random(), 0.0D, 0.0D, 0.0D); } //Put Salt Water else if (bucket.getItemDamage() == 2) { world.setBlock(X, Y, Z, TFCBlocks.saltWaterStationary); if (player.capabilities.isCreativeMode) return bucket; return new ItemStack(BCTFCItems.Buckets, 1, 1); } //Put Fresh Water else if (bucket.getItemDamage() == 3) { world.setBlock(X, Y, Z, TFCBlocks.freshWaterStationary); if (player.capabilities.isCreativeMode) return bucket; return new ItemStack(BCTFCItems.Buckets, 1, 1); } //Put Hot Water else if (bucket.getItemDamage() == 4) { world.setBlock(X, Y, Z, TFCBlocks.hotWaterStationary); if (player.capabilities.isCreativeMode) return bucket; return new ItemStack(BCTFCItems.Buckets, 1, 1); } //Put Oil else if (bucket.getItemDamage() == 6) { world.setBlock(X, Y, Z, BuildCraftEnergy.blockOil); if (player.capabilities.isCreativeMode) return bucket; return new ItemStack(BCTFCItems.Buckets, 1, 5); } } } } } return bucket; }
From source file:net.jamcraft.chowtime.core.items.CTItemBucket.java
License:Open Source License
/** * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer *//*w w w . j ava 2s.co m*/ public ItemStack onItemRightClick(ItemStack stack, World par2World, EntityPlayer par3EntityPlayer) { boolean flag = liquid == Blocks.air; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, flag); if (movingobjectposition == null) { return stack; } else { FillBucketEvent event = new FillBucketEvent(par3EntityPlayer, stack, par2World, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return stack; } if (event.getResult() == Event.Result.ALLOW) { if (par3EntityPlayer.capabilities.isCreativeMode) { return stack; } if (--stack.stackSize <= 0) { return event.result; } if (!par3EntityPlayer.inventory.addItemStackToInventory(event.result)) { par3EntityPlayer.dropPlayerItemWithRandomChoice(event.result, false); } return stack; } if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int i = movingobjectposition.blockX; int j = movingobjectposition.blockY; int k = movingobjectposition.blockZ; if (!par2World.canMineBlock(par3EntityPlayer, i, j, k)) { return stack; } if (flag) { if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, stack)) { return stack; } par2World.setBlockToAir(i, j, k); return this.placeBucketInInv(stack, par3EntityPlayer, bucket); } else { if (liquid == Blocks.air) { return new ItemStack(Items.bucket); } if (movingobjectposition.sideHit == 0) { --j; } if (movingobjectposition.sideHit == 1) { ++j; } if (movingobjectposition.sideHit == 2) { --k; } if (movingobjectposition.sideHit == 3) { ++k; } if (movingobjectposition.sideHit == 4) { --i; } if (movingobjectposition.sideHit == 5) { ++i; } if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, stack)) { return stack; } try { if (this.tryPlaceContainedLiquid(par2World, i, j, k, stack) && !par3EntityPlayer.capabilities.isCreativeMode) { return new ItemStack(Items.bucket); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return stack; } }
From source file:superhemi.SMOA.item.ItemOsmiumBucket.java
License:LGPL
/** * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer *///from w ww . j a v a 2 s . co m public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { float f = 1.0F; double d0 = par3EntityPlayer.prevPosX + (par3EntityPlayer.posX - par3EntityPlayer.prevPosX) * (double) f; double d1 = par3EntityPlayer.prevPosY + (par3EntityPlayer.posY - par3EntityPlayer.prevPosY) * (double) f + 1.62D - (double) par3EntityPlayer.yOffset; double d2 = par3EntityPlayer.prevPosZ + (par3EntityPlayer.posZ - par3EntityPlayer.prevPosZ) * (double) f; boolean flag = this.isFull == 0; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(par2World, par3EntityPlayer, flag); if (movingobjectposition == null) { return par1ItemStack; } else { FillBucketEvent event = new FillBucketEvent(par3EntityPlayer, par1ItemStack, par2World, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return par1ItemStack; } if (event.getResult() == Event.Result.ALLOW) { if (par3EntityPlayer.capabilities.isCreativeMode) { return par1ItemStack; } if (--par1ItemStack.stackSize <= 0) { return event.result; } if (!par3EntityPlayer.inventory.addItemStackToInventory(event.result)) { par3EntityPlayer.dropPlayerItem(event.result); } return par1ItemStack; } 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 (this.isFull == 0) { if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, par1ItemStack)) { return par1ItemStack; } if (par2World.getBlockMaterial(i, j, k) == Material.water && par2World.getBlockMetadata(i, j, k) == 0) { par2World.setBlockToAir(i, j, k); 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(i, j, k) == Material.lava && par2World.getBlockMetadata(i, j, k) == 0) { par2World.setBlockToAir(i, j, k); 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 (movingobjectposition.sideHit == 0) { --j; } if (movingobjectposition.sideHit == 1) { ++j; } if (movingobjectposition.sideHit == 2) { --k; } if (movingobjectposition.sideHit == 3) { ++k; } if (movingobjectposition.sideHit == 4) { --i; } if (movingobjectposition.sideHit == 5) { ++i; } if (!par3EntityPlayer.canPlayerEdit(i, j, k, movingobjectposition.sideHit, par1ItemStack)) { return par1ItemStack; } if (this.tryPlaceContainedLiquid(par2World, d0, d1, d2, i, j, k) && !par3EntityPlayer.capabilities.isCreativeMode) { return new ItemStack(Item.bucketEmpty); } } } else if (this.isFull == 0 && movingobjectposition.entityHit instanceof EntityCow) { return new ItemStack(Item.bucketMilk); } return par1ItemStack; } }
From source file:tv.savageboy74.savagetech.client.items.ItemDiamondBucket.java
License:Open Source License
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player) { boolean flag = this.isFull == Blocks.air; MovingObjectPosition movingobjectposition = this.getMovingObjectPositionFromPlayer(world, player, flag); if (movingobjectposition == null) { return itemStack; } else {//from w ww . j ava 2s . com FillBucketEvent event = new FillBucketEvent(player, itemStack, world, movingobjectposition); if (MinecraftForge.EVENT_BUS.post(event)) { return itemStack; } if (event.getResult() == Event.Result.ALLOW) { if (player.capabilities.isCreativeMode) { return itemStack; } if (--itemStack.stackSize <= 0) { return event.result; } if (!player.inventory.addItemStackToInventory(event.result)) { player.dropPlayerItemWithRandomChoice(event.result, false); } return itemStack; } if (movingobjectposition.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int i = movingobjectposition.getBlockPos().getX(); int j = movingobjectposition.getBlockPos().getY(); int k = movingobjectposition.getBlockPos().getZ(); BlockPos position = new BlockPos(i, j, k); if (!world.isBlockModifiable(player, position)) { return itemStack; } if (flag) { if (!player.canPlayerEdit(position, movingobjectposition.sideHit, itemStack)) { return itemStack; } Material material = world.getBlockState(position).getBlock().getMaterial(); IBlockState iblockstate = world.getBlockState(position); int l = world.getBlockState(position).getBlock().getMetaFromState(iblockstate); if (material == Material.water && l == 0) { world.setBlockToAir(position); return this.fillBucket(itemStack, player, STItems.diamondWaterBucket); } else if (material == Material.lava && l == 0) { world.setBlockToAir(position); return this.fillBucket(itemStack, player, STItems.diamondLavaBucket); } } } return itemStack; } }
From source file:tv.savageboy74.savagetech.client.items.ItemDiamondDeletionBucket.java
License:Open Source License
@Override public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityPlayer playerIn) { boolean flag = isFull == Blocks.air; MovingObjectPosition mop = getMovingObjectPositionFromPlayer(worldIn, playerIn, flag); if (mop == null) { return itemStackIn; }/*from w w w .j av a 2 s. c o m*/ else { FillBucketEvent event = new FillBucketEvent(playerIn, itemStackIn, worldIn, mop); if (MinecraftForge.EVENT_BUS.post(event)) { return itemStackIn; } if (event.getResult() == Event.Result.ALLOW) { if (playerIn.capabilities.isCreativeMode) { return itemStackIn; } if (--itemStackIn.stackSize <= 0) { return event.result; } if (!playerIn.inventory.addItemStackToInventory(event.result)) { playerIn.dropPlayerItemWithRandomChoice(event.result, false); } return itemStackIn; } if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int i = mop.getBlockPos().getX(); int j = mop.getBlockPos().getY(); int k = mop.getBlockPos().getZ(); if (!worldIn.isBlockModifiable(playerIn, new BlockPos(i, j, k))) { return itemStackIn; } if (flag) { if (!playerIn.canPlayerEdit(new BlockPos(i, j, k), mop.sideHit, itemStackIn)) { return itemStackIn; } BlockPos blockpos = mop.getBlockPos(); IBlockState iblockstate = worldIn.getBlockState(blockpos); Material material = iblockstate.getBlock().getMaterial(); int meta = worldIn.getBlockState(new BlockPos(i, j, k)).getBlock() .getMetaFromState(iblockstate); if (material == Material.water && meta == 0) { worldIn.setBlockToAir(new BlockPos(i, j, k)); itemStackIn.damageItem(1, playerIn); } else if (material == Material.lava && meta == 0) { worldIn.setBlockToAir(new BlockPos(i, j, k)); itemStackIn.damageItem(1, playerIn); } } } return itemStackIn; } }