public class Structure extends AbstractObject implements Bo2ObjectProvider
WPObject.BlockVisitor| Modifier and Type | Field and Description | 
|---|---|
| static org.pepsoft.util.AttributeKey<java.lang.Boolean> | ATTRIBUTE_IGNORE_AIR | 
ATTRIBUTE_COLLISION_MODE, ATTRIBUTE_CONNECT_BLOCKS, ATTRIBUTE_EXTEND_FOUNDATION, ATTRIBUTE_FILE, ATTRIBUTE_FREQUENCY, ATTRIBUTE_HEIGHT_MODE, ATTRIBUTE_LEAF_DECAY_MODE, ATTRIBUTE_MANAGE_WATERLOGGED, ATTRIBUTE_NEEDS_FOUNDATION, ATTRIBUTE_OFFSET, ATTRIBUTE_RANDOM_MIRRORING_ONLY, ATTRIBUTE_RANDOM_ROTATION, ATTRIBUTE_RANDOM_ROTATION_ONLY, ATTRIBUTE_REPLACE_WITH_AIR, ATTRIBUTE_REPLACE_WITH_AIR_MATERIAL, ATTRIBUTE_SPAWN_IN_LAVA, ATTRIBUTE_SPAWN_IN_WATER, ATTRIBUTE_SPAWN_ON_LAND, ATTRIBUTE_SPAWN_ON_LAVA, ATTRIBUTE_SPAWN_ON_WATER, ATTRIBUTE_SPAWN_ON_WATER_NO_COLLIDE, ATTRIBUTE_UNDERGROUND_MODE, ATTRIBUTE_VERTICAL_OFFSET, ATTRIBUTE_Y_VARIATION, COLLISION_MODE_ALL, COLLISION_MODE_NONE, COLLISION_MODE_SOLID, HEIGHT_MODE_FIXED, HEIGHT_MODE_TERRAIN, LEAF_DECAY_NO_CHANGE, LEAF_DECAY_OFF, LEAF_DECAY_ON| Modifier and Type | Method and Description | 
|---|---|
| Structure | clone()Create a clone of the object. | 
| java.util.List<WPObject> | getAllObjects()Obtain a list of all different  WPObjects which this
 object provider can return. | 
| java.util.Map<java.lang.String,java.io.Serializable> | getAttributes()Get a live view of the object metadata. | 
| javax.vecmath.Point3i | getDimensions()Get the dimensions of the object. | 
| java.util.List<Entity> | getEntities()Get any entities contained in the object. | 
| boolean | getMask(int x,
       int y,
       int z)Determine whether a block should be placed at the specified relative coordinates. | 
| Material | getMaterial(int x,
           int y,
           int z)Get the material to place at the specified relative coordinates. | 
| java.lang.String | getName()Get the name of this object provider (if it represents one object this
 may be the name of the object). | 
| WPObject | getObject()Obtain one  WPObject, which may be the same one every time, or a
 different one from a random collection or sequence every time. | 
| java.util.List<TileEntity> | getTileEntities()Get any tile entities contained in the object. | 
| static Structure | load(java.io.File file) | 
| static Structure | load(java.lang.String objectName,
    java.io.InputStream inputStream) | 
| <T extends java.io.Serializable> | setAttribute(org.pepsoft.util.AttributeKey<T> key,
            T value)Convenience method for setting the value of an attribute stored in the
 external metadata, if any. | 
| void | setAttributes(java.util.Map<java.lang.String,java.io.Serializable> attributes)Store external metadata about the object. | 
| void | setName(java.lang.String name)Set the name of the object. | 
| void | setSeed(long seed)Sets the seed of the PRNG, for object providers which use one. | 
getOffset, prepareForExportequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdump, getAllMaterials, getAttribute, guessConnectBlocks, guessManageWaterlogged, guestimateOffset, hasAttribute, visitBlockspublic static final org.pepsoft.util.AttributeKey<java.lang.Boolean> ATTRIBUTE_IGNORE_AIR
public WPObject getObject()
Bo2ObjectProviderWPObject, which may be the same one every time, or a
 different one from a random collection or sequence every time.getObject in interface Bo2ObjectProviderWPObject.public java.util.List<WPObject> getAllObjects()
Bo2ObjectProviderWPObjects which this
 object provider can return. This is an optional operation which may
 throw an UnsupportedOperationException if this object provider
 does not support it.getAllObjects in interface Bo2ObjectProviderpublic void setSeed(long seed)
Bo2ObjectProvidersetSeed in interface Bo2ObjectProviderseed - The seed to set on the PRNG, if any.public java.lang.String getName()
Bo2ObjectProvidergetName in interface Bo2ObjectProvidergetName in interface WPObjectpublic void setName(java.lang.String name)
WPObjectpublic javax.vecmath.Point3i getDimensions()
WPObjectgetDimensions in interface WPObjectpublic Material getMaterial(int x, int y, int z)
WPObjectWPObject.getMask(int, int, int) returns true. These coordinates are zero-based and must never be
 negative.getMaterial in interface WPObjectx - The relative X coordinate.y - The relative Y coordinate.z - The relative Z coordinate.public boolean getMask(int x,
                       int y,
                       int z)
WPObjectpublic java.util.List<Entity> getEntities()
WPObjectgetEntities in interface WPObjectnull.public java.util.List<TileEntity> getTileEntities()
WPObjectgetTileEntities in interface WPObjectnull.public final java.util.Map<java.lang.String,java.io.Serializable> getAttributes()
WPObjectgetAttributes in interface WPObjectnull.public final void setAttributes(java.util.Map<java.lang.String,java.io.Serializable> attributes)
WPObjectsetAttributes in interface WPObjectattributes - The external metadata to store.public final <T extends java.io.Serializable> void setAttribute(org.pepsoft.util.AttributeKey<T> key,
                                                                T value)
WPObjectnull will
 delete the attribute from the store. If the store becomes empty it is
 deleted entirely.setAttribute in interface WPObjectT - The type of the attribute.key - The key of the attribute to set or delete.value - The value of the attribute to set, or null to
     delete it.public Structure clone()
WPObjectclone in interface Bo2ObjectProviderclone in interface WPObjectclone in class AbstractObjectpublic static Structure load(java.io.File file) throws java.io.IOException
java.io.IOExceptionpublic static Structure load(java.lang.String objectName, java.io.InputStream inputStream) throws java.io.IOException
java.io.IOException