static { registerStructure(StructureMineshaftStart.class, "Mineshaft"); registerStructure(MapGenVillage.Start.class, "Village"); registerStructure(MapGenNetherBridge.Start.class, "Fortress"); registerStructure(MapGenStronghold.Start.class, "Stronghold"); registerStructure(MapGenScatteredFeature.Start.class, "Temple"); registerStructure(StructureOceanMonument.StartMonument.class, "Monument"); StructureMineshaftPieces.registerStructurePieces(); StructureVillagePieces.registerVillagePieces(); StructureNetherBridgePieces.registerNetherFortressPieces(); StructureStrongholdPieces.registerStrongholdPieces(); ComponentScatteredFeaturePieces.registerScatteredFeaturePieces(); StructureOceanMonumentPieces.func_175970_a(); }
public boolean func_35023_a( World world, Random random, StructureBoundingBox structureboundingbox) { if (func_35013_a(world, structureboundingbox)) { return false; } else { if (!field_35036_a) ; func_35022_a( world, structureboundingbox, 0, 0, 0, 4, 10, 4, true, random, StructureStrongholdPieces.func_35852_b()); func_35033_a(world, random, structureboundingbox, field_35035_b, 1, 7, 0); func_35033_a(world, random, structureboundingbox, EnumDoor.OPENING, 1, 1, 4); func_35018_a(world, Block.field_35285_bn.blockID, 0, 2, 6, 1, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 1, 5, 1, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 1, 6, 1, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 1, 5, 2, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 1, 4, 3, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 1, 5, 3, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 2, 4, 3, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 3, 3, 3, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 3, 4, 3, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 3, 3, 2, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 3, 2, 1, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 3, 3, 1, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 2, 2, 1, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 1, 1, 1, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 1, 2, 1, structureboundingbox); func_35018_a(world, Block.field_35285_bn.blockID, 0, 1, 1, 2, structureboundingbox); func_35018_a(world, Block.stairSingle.blockID, 0, 1, 1, 3, structureboundingbox); return true; } }
public boolean func_74875_a( World p_74875_1_, Random p_74875_2_, StructureBoundingBox p_74875_3_) { if (func_74860_a(p_74875_1_, p_74875_3_)) { return false; } func_74882_a( p_74875_1_, p_74875_3_, 0, 0, 0, 9, 8, 10, true, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74990_a(p_74875_1_, p_74875_2_, p_74875_3_, field_74998_a, 4, 3, 0); if (field_74996_b) { func_74884_a(p_74875_1_, p_74875_3_, 0, 3, 1, 0, 5, 3, 0, 0, false); } if (field_74995_d) { func_74884_a(p_74875_1_, p_74875_3_, 9, 3, 1, 9, 5, 3, 0, 0, false); } if (field_74997_c) { func_74884_a(p_74875_1_, p_74875_3_, 0, 5, 7, 0, 7, 9, 0, 0, false); } if (field_74999_h) { func_74884_a(p_74875_1_, p_74875_3_, 9, 5, 7, 9, 7, 9, 0, 0, false); } func_74884_a(p_74875_1_, p_74875_3_, 5, 1, 10, 7, 3, 10, 0, 0, false); func_74882_a( p_74875_1_, p_74875_3_, 1, 2, 1, 8, 2, 6, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74882_a( p_74875_1_, p_74875_3_, 4, 1, 5, 4, 4, 9, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74882_a( p_74875_1_, p_74875_3_, 8, 1, 5, 8, 4, 9, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74882_a( p_74875_1_, p_74875_3_, 1, 4, 7, 3, 4, 9, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74882_a( p_74875_1_, p_74875_3_, 1, 3, 5, 3, 3, 6, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74884_a( p_74875_1_, p_74875_3_, 1, 3, 4, 3, 3, 4, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74884_a( p_74875_1_, p_74875_3_, 1, 4, 6, 3, 4, 6, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74882_a( p_74875_1_, p_74875_3_, 5, 1, 7, 7, 1, 8, false, p_74875_2_, StructureStrongholdPieces.func_75197_b()); func_74884_a( p_74875_1_, p_74875_3_, 5, 1, 9, 7, 1, 9, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74884_a( p_74875_1_, p_74875_3_, 5, 2, 7, 7, 2, 7, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74884_a( p_74875_1_, p_74875_3_, 4, 5, 7, 4, 5, 9, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74884_a( p_74875_1_, p_74875_3_, 8, 5, 7, 8, 5, 9, Block.field_72079_ak.field_71990_ca, Block.field_72079_ak.field_71990_ca, false); func_74884_a( p_74875_1_, p_74875_3_, 5, 5, 7, 7, 5, 9, Block.field_72085_aj.field_71990_ca, Block.field_72085_aj.field_71990_ca, false); func_74864_a(p_74875_1_, Block.field_72069_aq.field_71990_ca, 0, 6, 5, 6, p_74875_3_); return true; }
/** * second Part of Structure generating, this for example places Spiderwebs, Mob Spawners, it * closes Mineshafts at the end, it adds Fences... */ public boolean addComponentParts( World par1World, Random par2Random, StructureBoundingBox par3StructureBoundingBox) { this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 0, 0, 0, 10, 7, 15, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.placeDoor(par1World, par2Random, par3StructureBoundingBox, EnumDoor.GRATES, 4, 1, 0); byte var4 = 6; this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 1, var4, 1, 1, var4, 14, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 9, var4, 1, 9, var4, 14, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 2, var4, 1, 8, var4, 2, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 2, var4, 14, 8, var4, 14, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 1, 1, 1, 2, 1, 4, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 8, 1, 1, 9, 1, 4, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 1, 1, 1, 1, 3, Block.lavaMoving.blockID, Block.lavaMoving.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 9, 1, 1, 9, 1, 3, Block.lavaMoving.blockID, Block.lavaMoving.blockID, false); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 3, 1, 8, 7, 1, 12, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithBlocks( par1World, par3StructureBoundingBox, 4, 1, 9, 6, 1, 11, Block.lavaMoving.blockID, Block.lavaMoving.blockID, false); int var5; for (var5 = 3; var5 < 14; var5 += 2) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 0, 3, var5, 0, 4, var5, Block.fenceIron.blockID, Block.fenceIron.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 10, 3, var5, 10, 4, var5, Block.fenceIron.blockID, Block.fenceIron.blockID, false); } for (var5 = 2; var5 < 9; var5 += 2) { this.fillWithBlocks( par1World, par3StructureBoundingBox, var5, 3, 15, var5, 4, 15, Block.fenceIron.blockID, Block.fenceIron.blockID, false); } var5 = this.getMetadataWithOffset(Block.stairsStoneBrickSmooth.blockID, 3); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 4, 1, 5, 6, 1, 7, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 4, 2, 6, 6, 2, 7, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 4, 3, 7, 6, 3, 7, false, par2Random, StructureStrongholdPieces.getStrongholdStones()); for (int var6 = 4; var6 <= 6; ++var6) { this.placeBlockAtCurrentPosition( par1World, Block.stairsStoneBrickSmooth.blockID, var5, var6, 1, 4, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.stairsStoneBrickSmooth.blockID, var5, var6, 2, 5, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.stairsStoneBrickSmooth.blockID, var5, var6, 3, 6, par3StructureBoundingBox); } byte var14 = 2; byte var7 = 0; byte var8 = 3; byte var9 = 1; switch (this.coordBaseMode) { case 0: var14 = 0; var7 = 2; break; case 1: var14 = 1; var7 = 3; var8 = 0; var9 = 2; case 2: default: break; case 3: var14 = 3; var7 = 1; var8 = 0; var9 = 2; } this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var14 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 4, 3, 8, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var14 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 5, 3, 8, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var14 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 6, 3, 8, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var7 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 4, 3, 12, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var7 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 5, 3, 12, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var7 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 6, 3, 12, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var8 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 3, 3, 9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var8 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 3, 3, 10, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var8 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 3, 3, 11, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var9 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 7, 3, 9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var9 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 7, 3, 10, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.endPortalFrame.blockID, var9 + (par2Random.nextFloat() > 0.9F ? 4 : 0), 7, 3, 11, par3StructureBoundingBox); if (!this.hasSpawner) { int var13 = this.getYWithOffset(3); int var10 = this.getXWithOffset(5, 6); int var11 = this.getZWithOffset(5, 6); if (par3StructureBoundingBox.isVecInside(var10, var13, var11)) { this.hasSpawner = true; par1World.setBlockWithNotify(var10, var13, var11, Block.mobSpawner.blockID); TileEntityMobSpawner var12 = (TileEntityMobSpawner) par1World.getBlockTileEntity(var10, var13, var11); if (var12 != null) { var12.setMobID("Silverfish"); } } } return true; }
/** * second Part of Structure generating, this for example places Spiderwebs, Mob Spawners, it * closes Mineshafts at the end, it adds Fences... */ public boolean addComponentParts( World par1World, Random par2Random, StructureBoundingBox par3StructureBoundingBox) { if (this.isLiquidInStructureBoundingBox(par1World, par3StructureBoundingBox)) { return false; } else { byte var4 = 11; if (!this.isLargeRoom) { var4 = 6; } this.fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 0, 0, 0, 13, var4 - 1, 14, true, par2Random, StructureStrongholdPieces.getStrongholdStones()); this.placeDoor(par1World, par2Random, par3StructureBoundingBox, this.doorType, 4, 1, 0); this.randomlyFillWithBlocks( par1World, par3StructureBoundingBox, par2Random, 0.07F, 2, 1, 1, 11, 4, 13, Block.web.blockID, Block.web.blockID, false); int var7; for (var7 = 1; var7 <= 13; ++var7) { if ((var7 - 1) % 4 == 0) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 1, var7, 1, 4, var7, Block.planks.blockID, Block.planks.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 12, 1, var7, 12, 4, var7, Block.planks.blockID, Block.planks.blockID, false); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, 2, 3, var7, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, 11, 3, var7, par3StructureBoundingBox); if (this.isLargeRoom) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 6, var7, 1, 9, var7, Block.planks.blockID, Block.planks.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 12, 6, var7, 12, 9, var7, Block.planks.blockID, Block.planks.blockID, false); } } else { this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 1, var7, 1, 4, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 12, 1, var7, 12, 4, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); if (this.isLargeRoom) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 6, var7, 1, 9, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 12, 6, var7, 12, 9, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); } } } for (var7 = 3; var7 < 12; var7 += 2) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 3, 1, var7, 4, 3, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 6, 1, var7, 7, 3, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 9, 1, var7, 10, 3, var7, Block.bookShelf.blockID, Block.bookShelf.blockID, false); } if (this.isLargeRoom) { this.fillWithBlocks( par1World, par3StructureBoundingBox, 1, 5, 1, 3, 5, 13, Block.planks.blockID, Block.planks.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 10, 5, 1, 12, 5, 13, Block.planks.blockID, Block.planks.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 4, 5, 1, 9, 5, 2, Block.planks.blockID, Block.planks.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 4, 5, 12, 9, 5, 13, Block.planks.blockID, Block.planks.blockID, false); this.placeBlockAtCurrentPosition( par1World, Block.planks.blockID, 0, 9, 5, 11, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.planks.blockID, 0, 8, 5, 11, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.planks.blockID, 0, 9, 5, 10, par3StructureBoundingBox); this.fillWithBlocks( par1World, par3StructureBoundingBox, 3, 6, 2, 3, 6, 12, Block.fence.blockID, Block.fence.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 10, 6, 2, 10, 6, 10, Block.fence.blockID, Block.fence.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 4, 6, 2, 9, 6, 2, Block.fence.blockID, Block.fence.blockID, false); this.fillWithBlocks( par1World, par3StructureBoundingBox, 4, 6, 12, 8, 6, 12, Block.fence.blockID, Block.fence.blockID, false); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, 9, 6, 11, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, 8, 6, 11, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, 9, 6, 10, par3StructureBoundingBox); var7 = this.getMetadataWithOffset(Block.ladder.blockID, 3); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 1, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 2, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 3, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 4, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 5, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 6, 13, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.ladder.blockID, var7, 10, 7, 13, par3StructureBoundingBox); byte var8 = 7; byte var9 = 7; this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 1, 9, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8, 9, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 1, 8, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8, 8, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 1, 7, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8, 7, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 2, 7, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 + 1, 7, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 1, 7, var9 - 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8 - 1, 7, var9 + 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8, 7, var9 - 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.fence.blockID, 0, var8, 7, var9 + 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8 - 2, 8, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8 + 1, 8, var9, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8 - 1, 8, var9 - 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8 - 1, 8, var9 + 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8, 8, var9 - 1, par3StructureBoundingBox); this.placeBlockAtCurrentPosition( par1World, Block.torchWood.blockID, 0, var8, 8, var9 + 1, par3StructureBoundingBox); } this.generateStructureChestContents( par1World, par3StructureBoundingBox, par2Random, 3, 3, 5, WeightedRandomChestContent.func_92080_a( strongholdLibraryChestContents, new WeightedRandomChestContent[] { Item.field_92105_bW.func_92112_a(par2Random, 1, 5, 2) }), 1 + par2Random.nextInt(4)); if (this.isLargeRoom) { this.placeBlockAtCurrentPosition(par1World, 0, 0, 12, 9, 1, par3StructureBoundingBox); this.generateStructureChestContents( par1World, par3StructureBoundingBox, par2Random, 12, 8, 1, WeightedRandomChestContent.func_92080_a( strongholdLibraryChestContents, new WeightedRandomChestContent[] { Item.field_92105_bW.func_92112_a(par2Random, 1, 5, 2) }), 1 + par2Random.nextInt(4)); } return true; } }
public boolean func_35023_a( World world, Random random, StructureBoundingBox structureboundingbox) { if (func_35013_a(world, structureboundingbox)) { return false; } else { func_35022_a( world, structureboundingbox, 0, 0, 0, 8, 4, 10, true, random, StructureStrongholdPieces.func_35852_b()); func_35033_a(world, random, structureboundingbox, field_35064_a, 1, 1, 0); func_35011_a(world, structureboundingbox, 1, 1, 10, 3, 3, 10, 0, 0, false); func_35022_a( world, structureboundingbox, 4, 1, 1, 4, 3, 1, false, random, StructureStrongholdPieces.func_35852_b()); func_35022_a( world, structureboundingbox, 4, 1, 3, 4, 3, 3, false, random, StructureStrongholdPieces.func_35852_b()); func_35022_a( world, structureboundingbox, 4, 1, 7, 4, 3, 7, false, random, StructureStrongholdPieces.func_35852_b()); func_35022_a( world, structureboundingbox, 4, 1, 9, 4, 3, 9, false, random, StructureStrongholdPieces.func_35852_b()); func_35011_a( world, structureboundingbox, 4, 1, 4, 4, 3, 6, Block.fenceIron.blockID, Block.fenceIron.blockID, false); func_35011_a( world, structureboundingbox, 5, 1, 5, 7, 3, 5, Block.fenceIron.blockID, Block.fenceIron.blockID, false); func_35018_a(world, Block.fenceIron.blockID, 0, 4, 3, 2, structureboundingbox); func_35018_a(world, Block.fenceIron.blockID, 0, 4, 3, 8, structureboundingbox); func_35018_a( world, Block.doorSteel.blockID, func_35009_c(Block.doorSteel.blockID, 3), 4, 1, 2, structureboundingbox); func_35018_a( world, Block.doorSteel.blockID, func_35009_c(Block.doorSteel.blockID, 3) + 8, 4, 2, 2, structureboundingbox); func_35018_a( world, Block.doorSteel.blockID, func_35009_c(Block.doorSteel.blockID, 3), 4, 1, 8, structureboundingbox); func_35018_a( world, Block.doorSteel.blockID, func_35009_c(Block.doorSteel.blockID, 3) + 8, 4, 2, 8, structureboundingbox); return true; } }
/** * 'second Part of Structure generating, this for example places Spiderwebs, Mob Spawners, it * closes Mineshafts at the end, it adds Fences...' */ public boolean addComponentParts( World par1World, Random par2Random, StructureBoundingBox par3StructureBoundingBox) { if (isLiquidInStructureBoundingBox(par1World, par3StructureBoundingBox)) { return false; } fillWithRandomizedBlocks( par1World, par3StructureBoundingBox, 0, 0, 0, 4, 4, 6, true, par2Random, StructureStrongholdPieces.getStrongholdStones()); placeDoor(par1World, par2Random, par3StructureBoundingBox, doorType, 1, 1, 0); placeDoor(par1World, par2Random, par3StructureBoundingBox, EnumDoor.OPENING, 1, 1, 6); fillWithBlocks( par1World, par3StructureBoundingBox, 3, 1, 2, 3, 1, 4, Block.stoneBrick.blockID, Block.stoneBrick.blockID, false); placeBlockAtCurrentPosition( par1World, Block.stairSingle.blockID, 5, 3, 1, 1, par3StructureBoundingBox); placeBlockAtCurrentPosition( par1World, Block.stairSingle.blockID, 5, 3, 1, 5, par3StructureBoundingBox); placeBlockAtCurrentPosition( par1World, Block.stairSingle.blockID, 5, 3, 2, 2, par3StructureBoundingBox); placeBlockAtCurrentPosition( par1World, Block.stairSingle.blockID, 5, 3, 2, 4, par3StructureBoundingBox); for (int i = 2; i <= 4; i++) { placeBlockAtCurrentPosition( par1World, Block.stairSingle.blockID, 5, 2, 1, i, par3StructureBoundingBox); } if (!hasMadeChest) { int j = getYWithOffset(2); int k = getXWithOffset(3, 3); int l = getZWithOffset(3, 3); if (par3StructureBoundingBox.isVecInside(k, j, l)) { hasMadeChest = true; createTreasureChestAtCurrentPosition( par1World, par3StructureBoundingBox, par2Random, 3, 2, 3, chestLoot, 2 + par2Random.nextInt(2)); } } return true; }
public boolean func_35023_a( World p_35023_1_, Random p_35023_2_, StructureBoundingBox p_35023_3_) { if (func_35013_a(p_35023_1_, p_35023_3_)) { return false; } func_35022_a( p_35023_1_, p_35023_3_, 0, 0, 0, 9, 8, 10, true, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35033_a(p_35023_1_, p_35023_2_, p_35023_3_, field_35044_a, 4, 3, 0); if (field_35042_b) { func_35011_a(p_35023_1_, p_35023_3_, 0, 3, 1, 0, 5, 3, 0, 0, false); } if (field_35040_d) { func_35011_a(p_35023_1_, p_35023_3_, 9, 3, 1, 9, 5, 3, 0, 0, false); } if (field_35043_c) { func_35011_a(p_35023_1_, p_35023_3_, 0, 5, 7, 0, 7, 9, 0, 0, false); } if (field_35041_e) { func_35011_a(p_35023_1_, p_35023_3_, 9, 5, 7, 9, 7, 9, 0, 0, false); } func_35011_a(p_35023_1_, p_35023_3_, 5, 1, 10, 7, 3, 10, 0, 0, false); func_35022_a( p_35023_1_, p_35023_3_, 1, 2, 1, 8, 2, 6, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35022_a( p_35023_1_, p_35023_3_, 4, 1, 5, 4, 4, 9, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35022_a( p_35023_1_, p_35023_3_, 8, 1, 5, 8, 4, 9, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35022_a( p_35023_1_, p_35023_3_, 1, 4, 7, 3, 4, 9, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35022_a( p_35023_1_, p_35023_3_, 1, 3, 5, 3, 3, 6, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35011_a( p_35023_1_, p_35023_3_, 1, 3, 4, 3, 3, 4, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35011_a( p_35023_1_, p_35023_3_, 1, 4, 6, 3, 4, 6, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35022_a( p_35023_1_, p_35023_3_, 5, 1, 7, 7, 1, 8, false, p_35023_2_, StructureStrongholdPieces.func_35852_b()); func_35011_a( p_35023_1_, p_35023_3_, 5, 1, 9, 7, 1, 9, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35011_a( p_35023_1_, p_35023_3_, 5, 2, 7, 7, 2, 7, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35011_a( p_35023_1_, p_35023_3_, 4, 5, 7, 4, 5, 9, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35011_a( p_35023_1_, p_35023_3_, 8, 5, 7, 8, 5, 9, Block.field_410_al.field_376_bc, Block.field_410_al.field_376_bc, false); func_35011_a( p_35023_1_, p_35023_3_, 5, 5, 7, 7, 5, 9, Block.field_411_ak.field_376_bc, Block.field_411_ak.field_376_bc, false); func_35018_a(p_35023_1_, Block.field_404_ar.field_376_bc, 0, 6, 5, 6, p_35023_3_); return true; }