Package org.bukkit.block
Interface Structure
- All Superinterfaces:
BlockState
,Metadatable
,PersistentDataHolder
,TileState
Represents a structure block that can save and load blocks from a file. They
can only be used by OPs, and are not obtainable in survival.
-
Method Summary
Modifier and TypeMethodDescriptionGet the name of who created this structure.float
Get the integrity of this structure.Get the metadata function this structure block will perform when activated.How this structure is mirrored.The relative position of the structure outline based on the position of the structure block.Get how this structure is rotated.long
getSeed()
The seed used to determine how many blocks are removed upon loading of this structure.The name of this structure.The distance to the opposite corner of this structure.Get theUsageMode
of this structure block.boolean
Get if this structure block is currently showing the bounding box.boolean
Get if this structure block should ignore entities.boolean
Check if this structure block is currently showing all air blocksvoid
Set the name of whoever created this structure.void
setAuthor
(@NotNull LivingEntity livingEntity) Set the name of whoever created this structure using aLivingEntity
.void
setBoundingBoxVisible
(boolean showBoundingBox) Set if this structure box should show the bounding box.void
setIgnoreEntities
(boolean ignoreEntities) While inUsageMode.SAVE
mode, this will ignore any entities when saving the structure.void
setIntegrity
(float integrity) Set the integrity of the structure.void
setMetadata
(@NotNull String metadata) Only applicable while inUsageMode.DATA
.void
Sets the mirroring of the structure.void
setRelativePosition
(@NotNull BlockVector vector) Set the relative position from the structure block.void
setRotation
(@NotNull StructureRotation rotation) Set how this structure is rotated.void
setSeed
(long seed) The seed used to determine which blocks will be removed upon loading.void
setShowAir
(boolean showAir) Set if the structure outline should show air blocks.void
setStructureName
(@NotNull String name) Set the name of this structure.void
setStructureSize
(@NotNull BlockVector vector) Set the maximum size of this structure from the origin point.void
setUsageMode
(@NotNull UsageMode mode) Set theUsageMode
of this structure block.Methods inherited from interface org.bukkit.block.BlockState
copy, getBlock, getBlockData, getChunk, getData, getDrops, getDrops, getDrops, getLightLevel, getLocation, getLocation, getRawData, getType, getWorld, getX, getY, getZ, isCollidable, isPlaced, setBlockData, setData, setRawData, setType, update, update, update
Methods inherited from interface org.bukkit.metadata.Metadatable
getMetadata, hasMetadata, removeMetadata, setMetadata
Methods inherited from interface org.bukkit.block.TileState
getPersistentDataContainer, isSnapshot
-
Method Details
-
getStructureName
The name of this structure.- Returns:
- structure name
-
setStructureName
Set the name of this structure. This is case-sensitive. The name of the structure in theUsageMode.SAVE
structure block MUST match the name within theUsageMode.CORNER
block or the size calculation will fail.- Parameters:
name
- the case-sensitive name of this structure
-
getAuthor
Get the name of who created this structure.- Returns:
- the name of whoever created this structure.
-
setAuthor
Set the name of whoever created this structure.- Parameters:
author
- whoever created this structure (not empty)
-
setAuthor
Set the name of whoever created this structure using aLivingEntity
.- Parameters:
livingEntity
- the entity who created this structure
-
getRelativePosition
The relative position of the structure outline based on the position of the structure block. Maximum allowed distance is 48 blocks in any direction.- Returns:
- a Location which contains the relative distance this structure is from the structure block.
-
setRelativePosition
Set the relative position from the structure block. Maximum allowed distance is 48 blocks in any direction.- Parameters:
vector
- theBlockVector
containing the relative origin coordinates of this structure.
-
getStructureSize
The distance to the opposite corner of this structure. The maximum structure size is 48x48x48. When a structure has successfully been calculated (i.e. it is within the maximum allowed distance) a white border surrounds the structure.- Returns:
- a
BlockVector
which contains the total size of the structure.
-
setStructureSize
Set the maximum size of this structure from the origin point. Maximum allowed size is 48x48x48.- Parameters:
vector
- theBlockVector
containing the size of this structure, based off of the origin coordinates.
-
setMirror
Sets the mirroring of the structure.- Parameters:
mirror
- the new mirroring method
-
getMirror
How this structure is mirrored.- Returns:
- the current mirroring method
-
setRotation
Set how this structure is rotated.- Parameters:
rotation
- the new rotation
-
getRotation
Get how this structure is rotated.- Returns:
- the new rotation
-
setUsageMode
Set theUsageMode
of this structure block.- Parameters:
mode
- the new mode to set.
-
getUsageMode
Get theUsageMode
of this structure block.- Returns:
- the mode this block is currently in.
-
setIgnoreEntities
void setIgnoreEntities(boolean ignoreEntities) While inUsageMode.SAVE
mode, this will ignore any entities when saving the structure.
While inUsageMode.LOAD
mode this will ignore any entities that were saved to file.- Parameters:
ignoreEntities
- the flag to set
-
isIgnoreEntities
boolean isIgnoreEntities()Get if this structure block should ignore entities.- Returns:
- true if the appropriate
UsageMode
should ignore entities.
-
setShowAir
void setShowAir(boolean showAir) Set if the structure outline should show air blocks.- Parameters:
showAir
- if the structure block should show air blocks
-
isShowAir
boolean isShowAir()Check if this structure block is currently showing all air blocks- Returns:
- true if the structure block is showing all air blocks
-
setBoundingBoxVisible
void setBoundingBoxVisible(boolean showBoundingBox) Set if this structure box should show the bounding box.- Parameters:
showBoundingBox
- if the structure box should be shown
-
isBoundingBoxVisible
boolean isBoundingBoxVisible()Get if this structure block is currently showing the bounding box.- Returns:
- true if the bounding box is shown
-
setIntegrity
void setIntegrity(float integrity) Set the integrity of the structure. Integrity must be between 0.0 and 1.0 Lower integrity values will result in more blocks being removed when loading a structure. Integrity andgetSeed()
are used together to determine which blocks are randomly removed to mimic "decay."- Parameters:
integrity
- the integrity of this structure
-
getIntegrity
float getIntegrity()Get the integrity of this structure.- Returns:
- the integrity of this structure
-
setSeed
void setSeed(long seed) The seed used to determine which blocks will be removed upon loading.getIntegrity()
and seed are used together to determine which blocks are randomly removed to mimic "decay."- Parameters:
seed
- the seed used to determine how many blocks will be removed
-
getSeed
long getSeed()The seed used to determine how many blocks are removed upon loading of this structure.- Returns:
- the seed used
-
setMetadata
Only applicable while inUsageMode.DATA
. Metadata are specific functions that can be applied to the structure location. Consult the Minecraft wiki for more information.- Parameters:
metadata
- the function to perform on the selected location
-
getMetadata
Get the metadata function this structure block will perform when activated. Consult the Minecraft Wiki for more information.- Returns:
- the function that will be performed when this block is activated
-