public boolean interactWith( ItemStack itemstack, EntityHuman entityhuman, World world, BlockPosition blockposition, EnumDirection enumdirection, float f, float f1, float f2) { if (world.isClientSide) { return true; } else { blockposition = blockposition.shift(enumdirection); if (!entityhuman.a(blockposition, enumdirection, itemstack)) { return false; } else { if (world.getType(blockposition).getBlock().getMaterial() == Material.AIR) { world.makeSound( (double) blockposition.getX() + 0.5D, (double) blockposition.getY() + 0.5D, (double) blockposition.getZ() + 0.5D, "item.fireCharge.use", 1.0F, (ItemFireball.g.nextFloat() - ItemFireball.g.nextFloat()) * 0.2F + 1.0F); world.setTypeUpdate(blockposition, Blocks.FIRE.getBlockData()); } if (!entityhuman.abilities.canInstantlyBuild) { --itemstack.count; } return true; } } }
public boolean generate(World world, Random random, BlockPosition blockposition) { while (world.isEmpty(blockposition) && blockposition.getY() > 2) { blockposition = blockposition.down(); } if (world.getType(blockposition).getBlock() != Blocks.SNOW) { return false; } else { int i = random.nextInt(this.b - 2) + 2; byte b0 = 1; for (int j = blockposition.getX() - i; j <= blockposition.getX() + i; ++j) { for (int k = blockposition.getZ() - i; k <= blockposition.getZ() + i; ++k) { int l = j - blockposition.getX(); int i1 = k - blockposition.getZ(); if (l * l + i1 * i1 <= i * i) { for (int j1 = blockposition.getY() - b0; j1 <= blockposition.getY() + b0; ++j1) { BlockPosition blockposition1 = new BlockPosition(j, j1, k); Block block = world.getType(blockposition1).getBlock(); if (block == Blocks.DIRT || block == Blocks.SNOW || block == Blocks.ICE) { world.setTypeAndData(blockposition1, this.a.getBlockData(), 2); } } } } } return true; } }
public void d(World world, BlockPosition blockposition) { if (!world.worldProvider.o()) { IBlockData iblockdata = world.getType(blockposition); int i = world.b(EnumSkyBlock.SKY, blockposition) - world.ab(); float f = world.d(1.0F); float f1 = f < 3.1415927F ? 0.0F : 6.2831855F; f += (f1 - f) * 0.2F; i = Math.round((float) i * MathHelper.cos(f)); i = MathHelper.clamp(i, 0, 15); if (this.b) { i = 15 - i; } if (((Integer) iblockdata.get(BlockDaylightDetector.POWER)).intValue() != i) { i = org.bukkit.craftbukkit.event.CraftEventFactory.callRedstoneChange( world, blockposition.getX(), blockposition.getY(), blockposition.getZ(), ((Integer) iblockdata.get(POWER)), i) .getNewCurrent(); // CraftBukkit - Call BlockRedstoneEvent world.setTypeAndData( blockposition, iblockdata.set(BlockDaylightDetector.POWER, Integer.valueOf(i)), 3); } } }
public void a( World world, BlockPosition blockposition, IBlockData iblockdata, EntityLiving entityliving) { if (!world.isClientSide) { if (((Boolean) iblockdata.get(BlockTNT.EXPLODE)).booleanValue()) { EntityTNTPrimed entitytntprimed = new EntityTNTPrimed( world, (double) ((float) blockposition.getX() + 0.5F), (double) blockposition.getY(), (double) ((float) blockposition.getZ() + 0.5F), entityliving); world.addEntity(entitytntprimed); world.a( (EntityHuman) null, entitytntprimed.locX, entitytntprimed.locY, entitytntprimed.locZ, SoundEffects.gV, SoundCategory.BLOCKS, 1.0F, 1.0F); } } }
private Set<EnumDirection> f(World world, BlockPosition blockposition) { int i = 1000; EnumSet enumset = EnumSet.noneOf(EnumDirection.class); Iterator iterator = EnumDirection.EnumDirectionLimit.HORIZONTAL.iterator(); while (iterator.hasNext()) { EnumDirection enumdirection = (EnumDirection) iterator.next(); BlockPosition blockposition1 = blockposition.shift(enumdirection); IBlockData iblockdata = world.getType(blockposition1); if ((!g(world, blockposition1, iblockdata)) && ((iblockdata.getBlock().getMaterial() != this.material) || (((Integer) iblockdata.get(LEVEL)).intValue() > 0))) { int j; int j; if (g(world, blockposition1.down(), world.getType(blockposition1.down()))) { j = a(world, blockposition1, 1, enumdirection.opposite()); } else { j = 0; } if (j < i) { enumset.clear(); } if (j <= i) { enumset.add(enumdirection); i = j; } } } return enumset; }
private int a(World world, BlockPosition blockposition, int i, EnumDirection enumdirection) { int j = 1000; Iterator iterator = EnumDirection.EnumDirectionLimit.HORIZONTAL.iterator(); while (iterator.hasNext()) { EnumDirection enumdirection1 = (EnumDirection) iterator.next(); if (enumdirection1 != enumdirection) { BlockPosition blockposition1 = blockposition.shift(enumdirection1); IBlockData iblockdata = world.getType(blockposition1); if ((!g(world, blockposition1, iblockdata)) && ((iblockdata.getBlock().getMaterial() != this.material) || (((Integer) iblockdata.get(LEVEL)).intValue() > 0))) { if (!g(world, blockposition1.down(), iblockdata)) { return i; } if (i < 4) { int k = a(world, blockposition1, i + 1, enumdirection1.opposite()); if (k < j) { j = k; } } } } } return j; }
public void setPositionRotation(BlockPosition blockposition, float f, float f1) { this.setPositionRotation( (double) blockposition.getX() + 0.5D, (double) blockposition.getY(), (double) blockposition.getZ() + 0.5D, f, f1); }
private void a(boolean var1) { class_aqk var2 = new class_aqk(var1); BlockPosition var3; for (var3 = this.d.r(class_aqk.a).down(); this.d.getType(var3).getBlock() == Blocks.BEDROCK && var3.getY() > this.d.G(); var3 = var3.down()) {; } var2.generate(this.d, new Random(), var3); }
public float c(float f) { BlockPosition blockposition = new BlockPosition(this.locX, 0.0D, this.locZ); if (this.world.isLoaded(blockposition)) { double d0 = (this.getBoundingBox().e - this.getBoundingBox().b) * 0.66D; int i = MathHelper.floor(this.locY + d0); return this.world.o(blockposition.up(i)); } else { return 0.0F; } }
protected void checkBlockCollisions() { BlockPosition blockposition = new BlockPosition( this.getBoundingBox().a + 0.001D, this.getBoundingBox().b + 0.001D, this.getBoundingBox().c + 0.001D); BlockPosition blockposition1 = new BlockPosition( this.getBoundingBox().d - 0.001D, this.getBoundingBox().e - 0.001D, this.getBoundingBox().f - 0.001D); if (this.world.areChunksLoadedBetween(blockposition, blockposition1)) { for (int i = blockposition.getX(); i <= blockposition1.getX(); ++i) { for (int j = blockposition.getY(); j <= blockposition1.getY(); ++j) { for (int k = blockposition.getZ(); k <= blockposition1.getZ(); ++k) { BlockPosition blockposition2 = new BlockPosition(i, j, k); IBlockData iblockdata = this.world.getType(blockposition2); try { iblockdata.getBlock().a(this.world, blockposition2, iblockdata, this); } catch (Throwable throwable) { CrashReport crashreport = CrashReport.a(throwable, "Colliding entity with block"); CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Block being collided with"); CrashReportSystemDetails.a(crashreportsystemdetails, blockposition2, iblockdata); throw new ReportedException(crashreport); } } } } } }
protected void k() { boolean flag = true; boolean flag1 = true; boolean flag2 = true; boolean flag3 = true; int i = 0; this.b("menu.generatingTerrain"); byte b0 = 0; // CraftBukkit start - fire WorldLoadEvent and handle whether or not to keep the spawn in memory for (int m = 0; m < worlds.size(); m++) { WorldServer worldserver = this.worlds.get(m); LOGGER.info( "Preparing start region for level " + m + " (Seed: " + worldserver.getSeed() + ")"); if (!worldserver.getWorld().getKeepSpawnInMemory()) { continue; } BlockPosition blockposition = worldserver.getSpawn(); long j = ax(); i = 0; for (int k = -192; k <= 192 && this.isRunning(); k += 16) { for (int l = -192; l <= 192 && this.isRunning(); l += 16) { long i1 = ax(); if (i1 - j > 1000L) { this.a_("Preparing spawn area", i * 100 / 625); j = i1; } ++i; worldserver.chunkProviderServer.getChunkAt( blockposition.getX() + k >> 4, blockposition.getZ() + l >> 4); } } } for (WorldServer world : this.worlds) { this.server .getPluginManager() .callEvent(new org.bukkit.event.world.WorldLoadEvent(world.getWorld())); } // CraftBukkit end this.q(); }
public IBlockData getPlacedState( World world, BlockPosition blockposition, EnumDirection enumdirection, float f, float f1, float f2, int i, EntityLiving entityliving) { IBlockData iblockdata = getBlockData().set(POWERED, Boolean.valueOf(false)); if (a(world, blockposition, enumdirection.opposite())) { return iblockdata.set( FACING, EnumLeverPosition.a(enumdirection, entityliving.getDirection())); } Iterator iterator = EnumDirection.EnumDirectionLimit.HORIZONTAL.iterator(); EnumDirection enumdirection1; do { if (!iterator.hasNext()) { if (World.a(world, blockposition.down())) { return iblockdata.set( FACING, EnumLeverPosition.a(EnumDirection.UP, entityliving.getDirection())); } return iblockdata; } enumdirection1 = (EnumDirection) iterator.next(); } while ((enumdirection1 == enumdirection) || (!a(world, blockposition, enumdirection1.opposite()))); return iblockdata.set(FACING, EnumLeverPosition.a(enumdirection1, entityliving.getDirection())); }
public boolean a(Material material) { double d0 = this.locY + (double) this.getHeadHeight(); BlockPosition blockposition = new BlockPosition(this.locX, d0, this.locZ); IBlockData iblockdata = this.world.getType(blockposition); Block block = iblockdata.getBlock(); if (block.getMaterial() == material) { float f = BlockFluids.b(iblockdata.getBlock().toLegacyData(iblockdata)) - 0.11111111F; float f1 = (float) (blockposition.getY() + 1) - f; boolean flag = d0 < (double) f1; return !flag && this instanceof EntityHuman ? false : flag; } else { return false; } }
public boolean generate(World world, Random random, BlockPosition blockposition) { for (int i = 0; i < 64; ++i) { BlockPosition blockposition1 = blockposition.a( random.nextInt(8) - random.nextInt(8), random.nextInt(4) - random.nextInt(4), random.nextInt(8) - random.nextInt(8)); if (world.isEmpty(blockposition1) && world.getType(blockposition1.down()).getBlock() == Blocks.NETHERRACK) { world.setTypeAndData(blockposition1, Blocks.FIRE.getBlockData(), 2); } } return true; }
public boolean interactWith( ItemStack itemstack, EntityHuman entityhuman, World world, BlockPosition blockposition, EnumDirection enumdirection, float f, float f1, float f2) { IBlockData iblockdata = world.getType(blockposition); Block block = iblockdata.getBlock(); if (!block.a(world, blockposition)) { blockposition = blockposition.shift(enumdirection); } if (itemstack.count == 0) { return false; } else if (!entityhuman.a(blockposition, enumdirection, itemstack)) { return false; } else if (world.a(this.a, blockposition, false, enumdirection, (Entity) null, itemstack)) { int i = this.filterData(itemstack.getData()); IBlockData iblockdata1 = this.a.getPlacedState(world, blockposition, enumdirection, f, f1, f2, i, entityhuman); if (world.setTypeAndData(blockposition, iblockdata1, 3)) { iblockdata1 = world.getType(blockposition); if (iblockdata1.getBlock() == this.a) { a(world, entityhuman, blockposition, itemstack); this.a.postPlace(world, blockposition, iblockdata1, entityhuman, itemstack); } world.makeSound( (double) ((float) blockposition.getX() + 0.5F), (double) ((float) blockposition.getY() + 0.5F), (double) ((float) blockposition.getZ() + 0.5F), this.a.stepSound.getPlaceSound(), (this.a.stepSound.getVolume1() + 1.0F) / 2.0F, this.a.stepSound.getVolume2() * 0.8F); --itemstack.count; } return true; } else { return false; } }
protected UseResult a( ItemStack var1, EntityHuman var2, World var3, BlockPosition var4, IBlockData var5) { var3.a( (double) ((float) var4.getX() + 0.5F), (double) ((float) var4.getY() + 0.5F), (double) ((float) var4.getZ() + 0.5F), var5.getBlock().stepSound.getStepSound(), (var5.getBlock().stepSound.getVolume() + 1.0F) / 2.0F, var5.getBlock().stepSound.getPitch() * 0.8F); if (var3.isClientSide) { return UseResult.SUCCESS; } else { var3.setTypeUpdate(var4, var5); var1.a(1, (EntityLiving) var2); return UseResult.SUCCESS; } }
public void wasExploded(World world, BlockPosition blockposition, Explosion explosion) { if (!world.isClientSide) { EntityTNTPrimed entitytntprimed = new EntityTNTPrimed( world, (double) ((float) blockposition.getX() + 0.5F), (double) blockposition.getY(), (double) ((float) blockposition.getZ() + 0.5F), explosion.getSource()); entitytntprimed.setFuseTicks( (short) (world.random.nextInt(entitytntprimed.getFuseTicks() / 4) + entitytntprimed.getFuseTicks() / 8)); world.addEntity(entitytntprimed); } }
public boolean b(World world, BlockPosition blockposition, ItemStack itemstack) { return itemstack.getData() == 1 && blockposition.getY() >= 2 && world.getDifficulty() != EnumDifficulty.PEACEFUL && !world.isStatic ? this.j().a(world, blockposition) != null : false; }
public boolean interactWith( ItemStack itemstack, EntityHuman entityhuman, World world, BlockPosition blockposition, EnumDirection enumdirection, float f, float f1, float f2) { if (!entityhuman.a(blockposition.shift(enumdirection), enumdirection, itemstack)) { return false; } else { IBlockData iblockdata = world.getType(blockposition); Block block = iblockdata.getBlock(); if (enumdirection != EnumDirection.DOWN && world.getType(blockposition.up()).getBlock().getMaterial() == Material.AIR) { if (block == Blocks.GRASS) { return this.a( itemstack, entityhuman, world, blockposition, Blocks.FARMLAND.getBlockData()); } if (block == Blocks.DIRT) { switch (ItemHoe.SyntheticClass_1.a[ ((BlockDirt.EnumDirtVariant) iblockdata.get(BlockDirt.VARIANT)).ordinal()]) { case 1: return this.a( itemstack, entityhuman, world, blockposition, Blocks.FARMLAND.getBlockData()); case 2: return this.a( itemstack, entityhuman, world, blockposition, Blocks.DIRT .getBlockData() .set(BlockDirt.VARIANT, BlockDirt.EnumDirtVariant.DIRT)); } } } return false; } }
public void remove(World world, BlockPosition blockposition, IBlockData iblockdata) { if (((Boolean) iblockdata.get(POWERED)).booleanValue()) { world.applyPhysics(blockposition, this); EnumDirection enumdirection = ((EnumLeverPosition) iblockdata.get(FACING)).c(); world.applyPhysics(blockposition.shift(enumdirection.opposite()), this); } super.remove(world, blockposition, iblockdata); }
public void b(World world, BlockPosition blockposition, IBlockData iblockdata, Random random) { int i = ((Integer) iblockdata.get(AGE)).intValue(); if ((i < 3) && (random.nextInt( Math.max(1, (int) world.growthOdds / world.spigotConfig.wartModifier * 10)) == 0)) { iblockdata = iblockdata.set(AGE, Integer.valueOf(i + 1)); CraftEventFactory.handleBlockGrowEvent( world, blockposition.getX(), blockposition.getY(), blockposition.getZ(), this, toLegacyData(iblockdata)); } super.b(world, blockposition, iblockdata, random); }
public void doPhysics(World var1, BlockPosition var2, IBlockData var3, Block var4) { EnumDirection var5 = (EnumDirection) var3.get(a); if (!var1.getType(var2.shift(var5.opposite())).getBlock().getMaterial().isBuildable()) { this.dropNaturallyForSure(var1, var2, var3, 0); var1.setAir(var2); } super.doPhysics(var1, var2, var3, var4); }
public UseResult registerItemKey( ItemStack var1, EntityHuman var2, World var3, BlockPosition var4, EnumUsedHand var5, EnumDirection var6, float var7, float var8, float var9) { if (!var2.a(var4.shift(var6), var6, var1)) { return UseResult.CANT_USE; } else { IBlockData var10 = var3.getType(var4); Block var11 = var10.getBlock(); if (var6 != EnumDirection.DOWN && var3.getType(var4.up()).getBlock().getMaterial() == Material.AIR) { if (var11 == Blocks.GRASS || var11 == Blocks.GRASS_PATH) { return this.a(var1, var2, var3, var4, Blocks.FARMLAND.getBlockData()); } if (var11 == Blocks.DIRT) { switch (ItemHoe.SyntheticClass_1.a[ ((BlockDirt.EnumDirtVariant) var10.get(BlockDirt.VARIANT)).ordinal()]) { case 1: return this.a(var1, var2, var3, var4, Blocks.FARMLAND.getBlockData()); case 2: return this.a( var1, var2, var3, var4, Blocks.DIRT .getBlockData() .set(BlockDirt.VARIANT, BlockDirt.EnumDirtVariant.DIRT)); } } } return UseResult.CANT_USE; } }
protected boolean a( ItemStack itemstack, EntityHuman entityhuman, World world, BlockPosition blockposition, IBlockData iblockdata) { world.makeSound( (double) ((float) blockposition.getX() + 0.5F), (double) ((float) blockposition.getY() + 0.5F), (double) ((float) blockposition.getZ() + 0.5F), iblockdata.getBlock().stepSound.getStepSound(), (iblockdata.getBlock().stepSound.getVolume1() + 1.0F) / 2.0F, iblockdata.getBlock().stepSound.getVolume2() * 0.8F); if (world.isClientSide) { return true; } else { world.setTypeUpdate(blockposition, iblockdata); itemstack.damage(1, entityhuman); return true; } }
protected void a(BlockPosition blockposition, Block block) { StepSound stepsound = block.stepSound; if (this.world.getType(blockposition.up()).getBlock() == Blocks.SNOW_LAYER) { stepsound = Blocks.SNOW_LAYER.stepSound; this.makeSound( stepsound.getStepSound(), stepsound.getVolume1() * 0.15F, stepsound.getVolume2()); } else if (!block.getMaterial().isLiquid()) { this.makeSound( stepsound.getStepSound(), stepsound.getVolume1() * 0.15F, stepsound.getVolume2()); } }
public static boolean a( World world, EntityHuman entityhuman, BlockPosition blockposition, ItemStack itemstack) { MinecraftServer minecraftserver = MinecraftServer.getServer(); if (minecraftserver == null) { return false; } else { if (itemstack.hasTag() && itemstack.getTag().hasKeyOfType("BlockEntityTag", 10)) { TileEntity tileentity = world.getTileEntity(blockposition); if (tileentity != null) { if (!world.isClientSide && tileentity.F() && !minecraftserver.getPlayerList().isOp(entityhuman.getProfile())) { return false; } NBTTagCompound nbttagcompound = new NBTTagCompound(); NBTTagCompound nbttagcompound1 = (NBTTagCompound) nbttagcompound.clone(); tileentity.b(nbttagcompound); NBTTagCompound nbttagcompound2 = (NBTTagCompound) itemstack.getTag().get("BlockEntityTag"); nbttagcompound.a(nbttagcompound2); nbttagcompound.setInt("x", blockposition.getX()); nbttagcompound.setInt("y", blockposition.getY()); nbttagcompound.setInt("z", blockposition.getZ()); if (!nbttagcompound.equals(nbttagcompound1)) { tileentity.a(nbttagcompound); tileentity.update(); return true; } } } return false; } }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + blockIndent; result = prime * result + ((breakBefore == null) ? 0 : breakBefore.hashCode()); result = prime * result + ((keep == null) ? 0 : keep.hashCode()); result = prime * result + keepWithNext; result = prime * result + keepWithNextSheets; result = prime * result + keepWithPreviousSheets; result = prime * result + ((listType == null) ? 0 : listType.hashCode()); result = prime * result + ((margin == null) ? 0 : margin.hashCode()); result = prime * result + orphans; result = prime * result + ((padding == null) ? 0 : padding.hashCode()); result = prime * result + ((textBlockProps == null) ? 0 : textBlockProps.hashCode()); result = prime * result + ((textBorderStyle == null) ? 0 : textBorderStyle.hashCode()); result = prime * result + ((verticalPosition == null) ? 0 : verticalPosition.hashCode()); result = prime * result + widows; return result; }
public boolean interact( World world, BlockPosition blockposition, IBlockData iblockdata, EntityHuman entityhuman, EnumDirection enumdirection, float f, float f1, float f2) { if (world.isClientSide) { return true; } boolean powered = ((Boolean) iblockdata.get(POWERED)).booleanValue(); org.bukkit.block.Block block = world .getWorld() .getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ()); int old = powered ? 15 : 0; int current = !powered ? 15 : 0; BlockRedstoneEvent eventRedstone = new BlockRedstoneEvent(block, old, current); world.getServer().getPluginManager().callEvent(eventRedstone); if ((eventRedstone.getNewCurrent() > 0 ? 1 : 0) != (powered ? 0 : 1)) { return true; } iblockdata = iblockdata.a(POWERED); world.setTypeAndData(blockposition, iblockdata, 3); world.makeSound( blockposition.getX() + 0.5D, blockposition.getY() + 0.5D, blockposition.getZ() + 0.5D, "random.click", 0.3F, ((Boolean) iblockdata.get(POWERED)).booleanValue() ? 0.6F : 0.5F); world.applyPhysics(blockposition, this); EnumDirection enumdirection1 = ((EnumLeverPosition) iblockdata.get(FACING)).c(); world.applyPhysics(blockposition.shift(enumdirection1.opposite()), this); return true; }
public boolean generate(World var1, Random var2, BlockPosition var3) { if (this.a == null) { this.a = var2.nextBoolean() ? Blocks.BROWN_MUSHROOM_BLOCK : Blocks.RED_MUSHROOM_BLOCK; } int var4 = var2.nextInt(3) + 4; boolean var5 = true; if (var3.getY() >= 1 && var3.getY() + var4 + 1 < 256) { int var9; int var10; for (int var6 = var3.getY(); var6 <= var3.getY() + 1 + var4; ++var6) { byte var7 = 3; if (var6 <= var3.getY() + 3) { var7 = 0; } BlockPosition.MutableBlockPosition var8 = new BlockPosition.MutableBlockPosition(); for (var9 = var3.getX() - var7; var9 <= var3.getX() + var7 && var5; ++var9) { for (var10 = var3.getZ() - var7; var10 <= var3.getZ() + var7 && var5; ++var10) { if (var6 >= 0 && var6 < 256) { Block var11 = var1.getType(var8.setPosition(var9, var6, var10)).getBlock(); if (var11.getMaterial() != Material.AIR && var11.getMaterial() != Material.LEAVES) { var5 = false; } } else { var5 = false; } } } } if (!var5) { return false; } else { Block var19 = var1.getType(var3.down()).getBlock(); if (var19 != Blocks.DIRT && var19 != Blocks.GRASS && var19 != Blocks.MYCELIM) { return false; } else { int var20 = var3.getY() + var4; if (this.a == Blocks.RED_MUSHROOM_BLOCK) { var20 = var3.getY() + var4 - 3; } int var21; for (var21 = var20; var21 <= var3.getY() + var4; ++var21) { var9 = 1; if (var21 < var3.getY() + var4) { ++var9; } if (this.a == Blocks.BROWN_MUSHROOM_BLOCK) { var9 = 3; } var10 = var3.getX() - var9; int var23 = var3.getX() + var9; int var12 = var3.getZ() - var9; int var13 = var3.getZ() + var9; for (int var14 = var10; var14 <= var23; ++var14) { for (int var15 = var12; var15 <= var13; ++var15) { int var16 = 5; if (var14 == var10) { --var16; } else if (var14 == var23) { ++var16; } if (var15 == var12) { var16 -= 3; } else if (var15 == var13) { var16 += 3; } BlockHugeMushroom.class_a_in_class_aiw var17 = BlockHugeMushroom.class_a_in_class_aiw.a(var16); if (this.a == Blocks.BROWN_MUSHROOM_BLOCK || var21 < var3.getY() + var4) { if ((var14 == var10 || var14 == var23) && (var15 == var12 || var15 == var13)) { continue; } if (var14 == var3.getX() - (var9 - 1) && var15 == var12) { var17 = BlockHugeMushroom.class_a_in_class_aiw.a; } if (var14 == var10 && var15 == var3.getZ() - (var9 - 1)) { var17 = BlockHugeMushroom.class_a_in_class_aiw.a; } if (var14 == var3.getX() + (var9 - 1) && var15 == var12) { var17 = BlockHugeMushroom.class_a_in_class_aiw.c; } if (var14 == var23 && var15 == var3.getZ() - (var9 - 1)) { var17 = BlockHugeMushroom.class_a_in_class_aiw.c; } if (var14 == var3.getX() - (var9 - 1) && var15 == var13) { var17 = BlockHugeMushroom.class_a_in_class_aiw.g; } if (var14 == var10 && var15 == var3.getZ() + (var9 - 1)) { var17 = BlockHugeMushroom.class_a_in_class_aiw.g; } if (var14 == var3.getX() + (var9 - 1) && var15 == var13) { var17 = BlockHugeMushroom.class_a_in_class_aiw.i; } if (var14 == var23 && var15 == var3.getZ() + (var9 - 1)) { var17 = BlockHugeMushroom.class_a_in_class_aiw.i; } } if (var17 == BlockHugeMushroom.class_a_in_class_aiw.e && var21 < var3.getY() + var4) { var17 = BlockHugeMushroom.class_a_in_class_aiw.k; } if (var3.getY() >= var3.getY() + var4 - 1 || var17 != BlockHugeMushroom.class_a_in_class_aiw.k) { BlockPosition var18 = new BlockPosition(var14, var21, var15); if (!var1.getType(var18).getBlock().isFullBlock()) { this.setTypeAndData( var1, var18, this.a.getBlockData().set(BlockHugeMushroom.a, var17)); } } } } } for (var21 = 0; var21 < var4; ++var21) { Block var22 = var1.getType(var3.up(var21)).getBlock(); if (!var22.isFullBlock()) { this.setTypeAndData( var1, var3.up(var21), this.a .getBlockData() .set(BlockHugeMushroom.a, BlockHugeMushroom.class_a_in_class_aiw.j)); } } return true; } } } else { return false; } }
public double c(BlockPosition blockposition) { return blockposition.d(this.locX, this.locY, this.locZ); }