Interface Structure

    • Method Detail

      • getStructureName

        @NotNull
        String getStructureName()
        The name of this structure.
        Returns:
        structure name
      • setStructureName

        void setStructureName​(@NotNull
                              String name)
        Set the name of this structure. This is case-sensitive. The name of the structure in the UsageMode.SAVE structure block MUST match the name within the UsageMode.CORNER block or the size calculation will fail.
        Parameters:
        name - the case-sensitive name of this structure
      • getAuthor

        @NotNull
        String getAuthor()
        Get the name of who created this structure.
        Returns:
        the name of whoever created this structure.
      • setAuthor

        void setAuthor​(@NotNull
                       String author)
        Set the name of whoever created this structure.
        Parameters:
        author - whoever created this structure (not empty)
      • setAuthor

        void setAuthor​(@NotNull
                       LivingEntity livingEntity)
        Set the name of whoever created this structure using a LivingEntity.
        Parameters:
        livingEntity - the entity who created this structure
      • getRelativePosition

        @NotNull
        BlockVector getRelativePosition()
        The relative position of the structure outline based on the position of the structure block. Maximum allowed distance is 32 blocks in any direction.
        Returns:
        a Location which contains the relative distance this structure is from the structure block.
      • setRelativePosition

        void setRelativePosition​(@NotNull
                                 BlockVector vector)
        Set the relative position from the structure block. Maximum allowed distance is 32 blocks in any direction.
        Parameters:
        vector - the BlockVector containing the relative origin coordinates of this structure.
      • getStructureSize

        @NotNull
        BlockVector getStructureSize()
        The distance to the opposite corner of this structure. The maximum structure size is 32x32x32. 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

        void setStructureSize​(@NotNull
                              BlockVector vector)
        Set the maximum size of this structure from the origin point. Maximum allowed size is 32x32x32.
        Parameters:
        vector - the BlockVector containing the size of this structure, based off of the origin coordinates.
      • setMirror

        void setMirror​(@NotNull
                       Mirror mirror)
        Sets the mirroring of the structure.
        Parameters:
        mirror - the new mirroring method
      • getMirror

        @NotNull
        Mirror getMirror()
        How this structure is mirrored.
        Returns:
        the current mirroring method
      • setRotation

        void setRotation​(@NotNull
                         StructureRotation rotation)
        Set how this structure is rotated.
        Parameters:
        rotation - the new rotation
      • getRotation

        @NotNull
        StructureRotation getRotation()
        Get how this structure is rotated.
        Returns:
        the new rotation
      • setUsageMode

        void setUsageMode​(@NotNull
                          UsageMode mode)
        Set the UsageMode of this structure block.
        Parameters:
        mode - the new mode to set.
      • getUsageMode

        @NotNull
        UsageMode getUsageMode()
        Get the UsageMode of this structure block.
        Returns:
        the mode this block is currently in.
      • setIgnoreEntities

        void setIgnoreEntities​(boolean ignoreEntities)
        While in UsageMode.SAVE mode, this will ignore any entities when saving the structure.
        While in UsageMode.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 and getSeed() 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

        void setMetadata​(@NotNull
                         String metadata)
        Only applicable while in UsageMode.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

        @NotNull
        String 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