@Override public boolean onBlockActivated( World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ) { if (!world.isRemote) { BlockPos blockpos = world.getStrongholdPos("Stronghold", new BlockPos(player)); if (blockpos != null) { EntityEnderEye entityendereye = new EntityEnderEye(world, pos.getX() + 0.5, pos.getY() + 1.5, pos.getZ() + 0.5); entityendereye.moveTowards(blockpos); world.spawnEntityInWorld(entityendereye); world.playAuxSFXAtEntity((EntityPlayer) null, 1002, new BlockPos(player), 0); } } return true; }
/** * 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, false); if (movingobjectposition != null && movingobjectposition.typeOfHit == EnumMovingObjectType.TILE) { int i = par2World.getBlockId( movingobjectposition.blockX, movingobjectposition.blockY, movingobjectposition.blockZ); if (i == Block.endPortalFrame.blockID) { return par1ItemStack; } } if (!par2World.isRemote) { ChunkPosition chunkposition = par2World.findClosestStructure( "Stronghold", (int) par3EntityPlayer.posX, (int) par3EntityPlayer.posY, (int) par3EntityPlayer.posZ); if (chunkposition != null) { EntityEnderEye entityendereye = new EntityEnderEye( par2World, par3EntityPlayer.posX, par3EntityPlayer.posY + 1.62D - (double) par3EntityPlayer.yOffset, par3EntityPlayer.posZ); entityendereye.moveTowards( (double) chunkposition.x, chunkposition.y, (double) chunkposition.z); par2World.spawnEntityInWorld(entityendereye); par2World.playSoundAtEntity( par3EntityPlayer, "random.bow", 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F)); par2World.playAuxSFXAtEntity( (EntityPlayer) null, 1002, (int) par3EntityPlayer.posX, (int) par3EntityPlayer.posY, (int) par3EntityPlayer.posZ, 0); if (!par3EntityPlayer.capabilities.isCreativeMode) { --par1ItemStack.stackSize; } } } return par1ItemStack; }