net.minecraft.world.gen.structure

## Class StructureComponent

- java.lang.Object
- - net.minecraft.world.gen.structure.StructureComponent

- Direct Known Subclasses:
    ComponentScatteredFeaturePieces.DesertPyramid, ComponentScatteredFeaturePieces.JunglePyramid, ComponentScatteredFeaturePieces.SwampHut, StructureMineshaftPieces.Corridor, StructureMineshaftPieces.Cross, StructureMineshaftPieces.Room, StructureMineshaftPieces.Stairs, StructureNetherBridgePieces.Corridor, StructureNetherBridgePieces.Corridor2, StructureNetherBridgePieces.Corridor3, StructureNetherBridgePieces.Corridor4, StructureNetherBridgePieces.Corridor5, StructureNetherBridgePieces.Crossing, StructureNetherBridgePieces.Crossing2, StructureNetherBridgePieces.Crossing3, StructureNetherBridgePieces.End, StructureNetherBridgePieces.Entrance, StructureNetherBridgePieces.NetherStalkRoom, StructureNetherBridgePieces.Stairs, StructureNetherBridgePieces.Straight, StructureNetherBridgePieces.Throne, StructureStrongholdPieces.Stronghold, StructureVillagePieces.Village

      public abstract class StructureComponent
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `StructureComponent.BlockSelector`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected StructureBoundingBox` | `boundingBox`
    `protected int` | `componentType`
    `protected int` | `coordBaseMode`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `StructureComponent()`
    `protected` | `StructureComponent(int par1)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract boolean` | `addComponentParts(World var1, java.util.Random var2, StructureBoundingBox var3)`
    `void` | `buildComponent(StructureComponent par1StructureComponent, java.util.List par2List, java.util.Random par3Random)`
    `protected void` | `clearCurrentPositionBlocksUpwards(World par1World, int par2, int par3, int par4, StructureBoundingBox par5StructureBoundingBox)`
    `protected void` | `fillWithAir(World par1World, StructureBoundingBox par2StructureBoundingBox, int par3, int par4, int par5, int par6, int par7, int par8)`
    `protected void` | `fillWithBlocks(World p_151549_1_, StructureBoundingBox p_151549_2_, int p_151549_3_, int p_151549_4_, int p_151549_5_, int p_151549_6_, int p_151549_7_, int p_151549_8_, Block p_151549_9_, Block p_151549_10_, boolean p_151549_11_)`
    `protected void` | `fillWithMetadataBlocks(World p_151556_1_, StructureBoundingBox p_151556_2_, int p_151556_3_, int p_151556_4_, int p_151556_5_, int p_151556_6_, int p_151556_7_, int p_151556_8_, Block p_151556_9_, int p_151556_10_, Block p_151556_11_, int p_151556_12_, boolean p_151556_13_)`
    `protected void` | `fillWithRandomizedBlocks(World par1World, StructureBoundingBox par2StructureBoundingBox, int par3, int par4, int par5, int par6, int par7, int par8, boolean par9, java.util.Random par10Random, StructureComponent.BlockSelector par11StructurePieceBlockSelector)`
    `static StructureComponent` | `findIntersecting(java.util.List par0List, StructureBoundingBox par1StructureBoundingBox)`
    `void` | `func_143009_a(World par1World, NBTTagCompound par2NBTTagCompound)`
    `NBTTagCompound` | `func_143010_b()`
    `protected abstract void` | `func_143011_b(NBTTagCompound var1)`
    `protected abstract void` | `func_143012_a(NBTTagCompound var1)`
    `protected void` | `func_151547_a(World p_151547_1_, StructureBoundingBox p_151547_2_, int p_151547_3_, int p_151547_4_, int p_151547_5_, int p_151547_6_, int p_151547_7_, int p_151547_8_, Block p_151547_9_, boolean p_151547_10_)`
    `protected void` | `func_151552_a(World p_151552_1_, StructureBoundingBox p_151552_2_, java.util.Random p_151552_3_, float p_151552_4_, int p_151552_5_, int p_151552_6_, int p_151552_7_, Block p_151552_8_, int p_151552_9_)`
    `ChunkPosition` | `func_151553_a()`
    `protected void` | `func_151554_b(World p_151554_1_, Block p_151554_2_, int p_151554_3_, int p_151554_4_, int p_151554_5_, int p_151554_6_, StructureBoundingBox p_151554_7_)`
    `protected boolean` | `generateStructureChestContents(World par1World, StructureBoundingBox par2StructureBoundingBox, java.util.Random par3Random, int par4, int par5, int par6, WeightedRandomChestContent[] par7ArrayOfWeightedRandomChestContent, int par8)`
    `protected boolean` | `generateStructureDispenserContents(World par1World, StructureBoundingBox par2StructureBoundingBox, java.util.Random par3Random, int par4, int par5, int par6, int par7, WeightedRandomChestContent[] par8ArrayOfWeightedRandomChestContent, int par9)`
    `protected Block` | `getBlockAtCurrentPosition(World p_151548_1_, int p_151548_2_, int p_151548_3_, int p_151548_4_, StructureBoundingBox p_151548_5_)`
    `StructureBoundingBox` | `getBoundingBox()`
    `int` | `getComponentType()`
    `protected int` | `getMetadataWithOffset(Block p_151555_1_, int p_151555_2_)`
    `protected int` | `getXWithOffset(int par1, int par2)`
    `protected int` | `getYWithOffset(int par1)`
    `protected int` | `getZWithOffset(int par1, int par2)`
    `protected boolean` | `isLiquidInStructureBoundingBox(World par1World, StructureBoundingBox par2StructureBoundingBox)`
    `protected void` | `placeBlockAtCurrentPosition(World p_151550_1_, Block p_151550_2_, int p_151550_3_, int p_151550_4_, int p_151550_5_, int p_151550_6_, StructureBoundingBox p_151550_7_)`
    `protected void` | `placeDoorAtCurrentPosition(World par1World, StructureBoundingBox par2StructureBoundingBox, java.util.Random par3Random, int par4, int par5, int par6, int par7)`
    `protected void` | `randomlyFillWithBlocks(World p_151551_1_, StructureBoundingBox p_151551_2_, java.util.Random p_151551_3_, float p_151551_4_, int p_151551_5_, int p_151551_6_, int p_151551_7_, int p_151551_8_, int p_151551_9_, int p_151551_10_, Block p_151551_11_, Block p_151551_12_, boolean p_151551_13_)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### boundingBox

          protected StructureBoundingBox boundingBox

    - #### coordBaseMode

          protected int coordBaseMode

    - #### componentType

          protected int componentType

  - ### Constructor Detail

    - #### StructureComponent

          public StructureComponent()

    - #### StructureComponent

          protected StructureComponent(int par1)

  - ### Method Detail

    - #### func_143010_b

          public NBTTagCompound func_143010_b()

    - #### func_143012_a

          protected abstract void func_143012_a(NBTTagCompound var1)

    - #### func_143009_a

          public void func_143009_a(World par1World,
                           NBTTagCompound par2NBTTagCompound)

    - #### func_143011_b

          protected abstract void func_143011_b(NBTTagCompound var1)

    - #### buildComponent

          public void buildComponent(StructureComponent par1StructureComponent,
                            java.util.List par2List,
                            java.util.Random par3Random)

    - #### addComponentParts

          public abstract boolean addComponentParts(World var1,
                                  java.util.Random var2,
                                  StructureBoundingBox var3)

    - #### getBoundingBox

          public StructureBoundingBox getBoundingBox()

    - #### getComponentType

          public int getComponentType()

    - #### findIntersecting

          public static StructureComponent findIntersecting(java.util.List par0List,
                                            StructureBoundingBox par1StructureBoundingBox)

    - #### func_151553_a

          public ChunkPosition func_151553_a()

    - #### isLiquidInStructureBoundingBox

          protected boolean isLiquidInStructureBoundingBox(World par1World,
                                               StructureBoundingBox par2StructureBoundingBox)

    - #### getXWithOffset

          protected int getXWithOffset(int par1,
                           int par2)

    - #### getYWithOffset

          protected int getYWithOffset(int par1)

    - #### getZWithOffset

          protected int getZWithOffset(int par1,
                           int par2)

    - #### getMetadataWithOffset

          protected int getMetadataWithOffset(Block p_151555_1_,
                                  int p_151555_2_)

    - #### placeBlockAtCurrentPosition

          protected void placeBlockAtCurrentPosition(World p_151550_1_,
                                         Block p_151550_2_,
                                         int p_151550_3_,
                                         int p_151550_4_,
                                         int p_151550_5_,
                                         int p_151550_6_,
                                         StructureBoundingBox p_151550_7_)

    - #### getBlockAtCurrentPosition

          protected Block getBlockAtCurrentPosition(World p_151548_1_,
                                        int p_151548_2_,
                                        int p_151548_3_,
                                        int p_151548_4_,
                                        StructureBoundingBox p_151548_5_)

    - #### fillWithAir

          protected void fillWithAir(World par1World,
                         StructureBoundingBox par2StructureBoundingBox,
                         int par3,
                         int par4,
                         int par5,
                         int par6,
                         int par7,
                         int par8)

    - #### fillWithBlocks

          protected void fillWithBlocks(World p_151549_1_,
                            StructureBoundingBox p_151549_2_,
                            int p_151549_3_,
                            int p_151549_4_,
                            int p_151549_5_,
                            int p_151549_6_,
                            int p_151549_7_,
                            int p_151549_8_,
                            Block p_151549_9_,
                            Block p_151549_10_,
                            boolean p_151549_11_)

    - #### fillWithMetadataBlocks

          protected void fillWithMetadataBlocks(World p_151556_1_,
                                    StructureBoundingBox p_151556_2_,
                                    int p_151556_3_,
                                    int p_151556_4_,
                                    int p_151556_5_,
                                    int p_151556_6_,
                                    int p_151556_7_,
                                    int p_151556_8_,
                                    Block p_151556_9_,
                                    int p_151556_10_,
                                    Block p_151556_11_,
                                    int p_151556_12_,
                                    boolean p_151556_13_)

    - #### fillWithRandomizedBlocks

          protected void fillWithRandomizedBlocks(World par1World,
                                      StructureBoundingBox par2StructureBoundingBox,
                                      int par3,
                                      int par4,
                                      int par5,
                                      int par6,
                                      int par7,
                                      int par8,
                                      boolean par9,
                                      java.util.Random par10Random,
                                      StructureComponent.BlockSelector par11StructurePieceBlockSelector)

    - #### randomlyFillWithBlocks

          protected void randomlyFillWithBlocks(World p_151551_1_,
                                    StructureBoundingBox p_151551_2_,
                                    java.util.Random p_151551_3_,
                                    float p_151551_4_,
                                    int p_151551_5_,
                                    int p_151551_6_,
                                    int p_151551_7_,
                                    int p_151551_8_,
                                    int p_151551_9_,
                                    int p_151551_10_,
                                    Block p_151551_11_,
                                    Block p_151551_12_,
                                    boolean p_151551_13_)

    - #### func_151552_a

          protected void func_151552_a(World p_151552_1_,
                           StructureBoundingBox p_151552_2_,
                           java.util.Random p_151552_3_,
                           float p_151552_4_,
                           int p_151552_5_,
                           int p_151552_6_,
                           int p_151552_7_,
                           Block p_151552_8_,
                           int p_151552_9_)

    - #### func_151547_a

          protected void func_151547_a(World p_151547_1_,
                           StructureBoundingBox p_151547_2_,
                           int p_151547_3_,
                           int p_151547_4_,
                           int p_151547_5_,
                           int p_151547_6_,
                           int p_151547_7_,
                           int p_151547_8_,
                           Block p_151547_9_,
                           boolean p_151547_10_)

    - #### clearCurrentPositionBlocksUpwards

          protected void clearCurrentPositionBlocksUpwards(World par1World,
                                               int par2,
                                               int par3,
                                               int par4,
                                               StructureBoundingBox par5StructureBoundingBox)

    - #### func_151554_b

          protected void func_151554_b(World p_151554_1_,
                           Block p_151554_2_,
                           int p_151554_3_,
                           int p_151554_4_,
                           int p_151554_5_,
                           int p_151554_6_,
                           StructureBoundingBox p_151554_7_)

    - #### generateStructureChestContents

          protected boolean generateStructureChestContents(World par1World,
                                               StructureBoundingBox par2StructureBoundingBox,
                                               java.util.Random par3Random,
                                               int par4,
                                               int par5,
                                               int par6,
                                               WeightedRandomChestContent[] par7ArrayOfWeightedRandomChestContent,
                                               int par8)

    - #### generateStructureDispenserContents

          protected boolean generateStructureDispenserContents(World par1World,
                                                   StructureBoundingBox par2StructureBoundingBox,
                                                   java.util.Random par3Random,
                                                   int par4,
                                                   int par5,
                                                   int par6,
                                                   int par7,
                                                   WeightedRandomChestContent[] par8ArrayOfWeightedRandomChestContent,
                                                   int par9)

    - #### placeDoorAtCurrentPosition

          protected void placeDoorAtCurrentPosition(World par1World,
                                        StructureBoundingBox par2StructureBoundingBox,
                                        java.util.Random par3Random,
                                        int par4,
                                        int par5,
                                        int par6,
                                        int par7)