List of usage examples for net.minecraftforge.event.entity.player PlayerInteractEvent.RightClickItem getItemStack
@Nonnull
public ItemStack getItemStack()
From source file:de.ellpeck.actuallyadditions.mod.items.ItemWaterBowl.java
@SubscribeEvent public void onPlayerInteractEvent(PlayerInteractEvent.RightClickItem event) { if (event.getWorld() != null) { if (ConfigBoolValues.WATER_BOWL.isEnabled()) { if (StackUtil.isValid(event.getItemStack()) && event.getItemStack().getItem() == Items.BOWL) { RayTraceResult trace = WorldUtil.getNearestBlockWithDefaultReachDistance(event.getWorld(), event.getEntityPlayer(), true, false, false); ActionResult<ItemStack> result = ForgeEventFactory.onBucketUse(event.getEntityPlayer(), event.getWorld(), event.getItemStack(), trace); if (result == null && trace != null && trace.getBlockPos() != null) { if (event.getEntityPlayer().canPlayerEdit(trace.getBlockPos().offset(trace.sideHit), trace.sideHit, event.getItemStack())) { IBlockState state = event.getWorld().getBlockState(trace.getBlockPos()); Material material = state.getMaterial(); if (material == Material.WATER && state.getValue(BlockLiquid.LEVEL) == 0) { event.getEntityPlayer().playSound(SoundEvents.ITEM_BUCKET_FILL, 1.0F, 1.0F); if (!event.getWorld().isRemote) { event.getWorld().setBlockState(trace.getBlockPos(), Blocks.AIR.getDefaultState(), 11); ItemStack reduced = StackUtil.addStackSize(event.getItemStack(), -1); ItemStack bowl = new ItemStack(InitItems.itemWaterBowl); if (!StackUtil.isValid(reduced)) { event.getEntityPlayer().setHeldItem(event.getHand(), bowl); } else if (!event.getEntityPlayer().inventory .addItemStackToInventory(bowl.copy())) { EntityItem entityItem = new EntityItem(event.getWorld(), event.getEntityPlayer().posX, event.getEntityPlayer().posY, event.getEntityPlayer().posZ, bowl.copy()); entityItem.setPickupDelay(0); event.getWorld().spawnEntity(entityItem); }/*from w w w .j a v a 2 s . co m*/ } } } } } } } }
From source file:org.blockartistry.DynSurround.client.handlers.PlayerActionHandler.java
License:MIT License
@SubscribeEvent public void onItemUse(@Nonnull final PlayerInteractEvent.RightClickItem event) { if (event.getEntityPlayer() == null || event.getEntityPlayer().world == null || event.getItemStack() == null) return;// ww w . j a va 2s. c o m if (event.getEntityPlayer().world.isRemote && this.itemRegistry.doBowSound(event.getItemStack())) { final ItemStack currentItem = event.getEntityPlayer().getHeldItem(event.getHand()); final SoundEffect soundEffect = this.itemRegistry.getUseSound(currentItem); if (soundEffect != null) { final BasicSound<?> sound = soundEffect.createSound(EnvironState.getPlayer()); sound.setRoutable(DSurround.isInstalledOnServer()); SoundEffectHandler.INSTANCE.playSound(sound); } } }
From source file:org.blockartistry.mod.DynSurround.client.EnvironStateHandler.java
License:MIT License
@SubscribeEvent public void onItemUse(final PlayerInteractEvent.RightClickItem event) { if (BOW_PULL == null || event.getEntityPlayer() == null || event.getEntityPlayer().worldObj == null || event.getItemStack() == null || event.getItemStack().getItem() == null) return;/*from w ww. ja v a2 s . co m*/ if (event.getEntityPlayer().worldObj.isRemote && event.getItemStack().getItem() instanceof ItemBow) { SoundManager.playSoundAtPlayer(EnvironState.getPlayer(), BOW_PULL, SoundCategory.PLAYERS); } }
From source file:robmart.rpgmode.common.handlers.EventHandler.java
License:Open Source License
@SubscribeEvent public static void onPlayerRightClickBlock(final PlayerInteractEvent.RightClickItem event) { RayTraceResult look = PlayerHelper.rayTrace(event.getWorld(), event.getEntityPlayer(), true); if (look == null) return;/*from w w w . ja v a 2s . c o m*/ if (look.typeOfHit != RayTraceResult.Type.BLOCK) return; IBlockState state = event.getWorld().getBlockState(look.getBlockPos()); if (event.getItemStack().getItem() instanceof ItemGlassBottle && state.getMaterial() == Material.LAVA) { event.getWorld().playSound(event.getEntityPlayer(), event.getEntityPlayer().posX, event.getEntityPlayer().posY, event.getEntityPlayer().posZ, SoundEvents.ITEM_BOTTLE_FILL, SoundCategory.NEUTRAL, 1.0F, 1.0F); ItemHelper.turnBottleIntoItem(event.getItemStack(), event.getEntityPlayer(), PotionHelper.getItemStackOfPotion(Items.POTIONITEM, RPGPotionTypes.LAVA)); } }