### setupSection(ConfigurationSection configurationSection) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSection.html Initializes the section when a structure is loaded from the configuration file. ```APIDOC ## void setupSection(@Nullable ConfigurationSection configurationSection) ### Description Called when a structure is loaded from the plugin's structure folder. Note that this is not called when using the StructureBuilder, so default values should be set in the constructor. ### Parameters - **configurationSection** (ConfigurationSection) - Optional - The configuration section from the file, or null if it does not exist. ``` -------------------------------- ### getRolls() / setRolls(int rolls) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/LootTable.html Methods to get or set the number of rolls for the loot table. ```APIDOC ## int getRolls() ### Description Gets the number of rolls for the loot table. ### Returns - **int** - The number of rolls. ## void setRolls(int rolls) ### Description Sets the number of rolls for the loot table. ### Parameters - **rolls** (int) - The number of rolls. ``` -------------------------------- ### getRolls() / setRolls(int rolls) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/MinecraftLootTable.html Gets or sets the number of items chosen by the loot table. ```APIDOC ## Method: getRolls ### Description Get the number of items chosen. ### Returns - (int) The number of items chosen. ## Method: setRolls ### Description Set the number of rolls for the loot table. ### Parameters - **rolls** (int) - The number of rolls for the loot tables. ``` -------------------------------- ### provide() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bottomfill/BottomFillProvider.html Retrieves the first registered BottomFill implementation. ```APIDOC ## static BottomFillImpl provide() ### Description Get a bottom fill implementation. Currently, only the first implementation registered will be provided. ### Returns - **BottomFillImpl** - The first implementation specified, or the default if no custom ones were added. ``` -------------------------------- ### ConfigLootTable(String name) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/ConfigLootTable.html Constructor to create a new loot table instance and load the corresponding file. ```APIDOC ## Constructor: ConfigLootTable(String name) ### Description Creates a new loot table instance with the specified name and attempts to load the associated loot table file. ### Parameters - **name** (String) - The name of the loot table file to load. ``` -------------------------------- ### provide(int impl) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bottomfill/BottomFillProvider.html Retrieves a specific BottomFill implementation by its index. ```APIDOC ## static BottomFillImpl provide(int impl) ### Description Get a bottom fill implementation by its index. ### Parameters - **impl** (int) - Required - The implementation number. ### Returns - **BottomFillImpl** - The implementation if it exists. ``` -------------------------------- ### ConfigLootItem Implementation Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/ConfigLootItem.html To create a custom loot item, extend the ConfigLootItem class and implement the constructItem method. Ensure the subclass provides a constructor matching the base class signature. ```APIDOC ## Class: ConfigLootItem ### Description An abstract class for defining custom loot items. Implementations must be registered via `CustomStructureAddon.registerLootItem`. ### Constructor `ConfigLootItem(LootTable lootTable, String itemID, int weight, String amount)` ### Methods - **constructItem(ConfigurationSection configurationSection)**: Abstract method called when the loot table processes the item. - **getLootTable()**: Returns the associated LootTable. - **getItemID()**: Returns the item ID string. - **getWeight()**: Returns the item weight. - **getAmount()**: Returns the processed amount as an integer. - **getRawAmount()**: Returns the raw amount string. ``` -------------------------------- ### build Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Constructs the structure object. ```APIDOC ## Structure build() ### Description Build the structure. Note: This does not check to see if all values are set. If any of the properties are not set then a NullPointerException will occur. ### Returns - **Structure** - The built structure. ``` -------------------------------- ### SubSchematic(ConfigurationSection section, boolean advanced) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/schematics/SubSchematic.html Creates a new SubSchematic instance from a Bukkit configuration section. ```APIDOC ## Constructor: SubSchematic(ConfigurationSection section, boolean advanced) ### Description Initializes a SubSchematic object based on a provided configuration section. ### Parameters - **section** (org.bukkit.configuration.ConfigurationSection) - Required - The configuration section containing schematic data. - **advanced** (boolean) - Required - Specifies if the schematic is part of an advanced sub-schematic configuration. ``` -------------------------------- ### spawnMob(String name, Location loc, int count) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/mythicalmobs/MMDisabled.html Spawns a specified number of mythical mobs at the given location. ```APIDOC ### void spawnMob(String name, org.bukkit.Location loc, int count) Spawns a specified number of mythical mobs at the provided Bukkit location. #### Parameters - **name** (String) - The name of the mythical mob to spawn. - **loc** (org.bukkit.Location) - The location where the mob should be spawned. - **count** (int) - The number of mobs to spawn. ``` -------------------------------- ### BottomFillProvider.provide Source: https://ryandw11.github.io/CustomStructures/index-files/index-14.html Methods to retrieve bottom fill implementations. ```APIDOC ## static provide() ### Description Get a bottom fill implementation. ## static provide(int) ### Description Get a bottom fill implementation based on an integer identifier. ### Parameters - **id** (int) - The implementation identifier. ``` -------------------------------- ### run() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/threading/CheckStructureList.html Executes the task to check the structure list for potential memory leaks. ```APIDOC ## Method: run() ### Description Performs the scheduled task to ensure there is no memory leak with the structure list. ``` -------------------------------- ### Structure Configuration Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Methods to configure the properties and behavior of the structure. ```APIDOC ## setProbability(int numerator, int denominator) Sets the spawning probability of the structure as a fraction (numerator/denominator). ## setPriority(int priority) Sets the priority of the structure. Lower numbers indicate higher priority (Default: 100). ## setCompiledSchematic(String cschem) Sets the compiled schematic file name. The file must exist in the schematics folder. ## setStructureLimitations(StructureLimitations limitations) Sets the limitations for the structure. ## setStructureProperties(StructureProperties properties) Sets the properties for the structure. ``` -------------------------------- ### spawnMob(String name, Location loc, double level, int count) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/mythicalmobs/MMDisabled.html Spawns a specified number of mythical mobs at the given location with a defined level. ```APIDOC ### void spawnMob(String name, org.bukkit.Location loc, double level, int count) Spawns a specified number of mythical mobs at the provided Bukkit location with a specific level. #### Parameters - **name** (String) - The name of the mythical mob to spawn. - **loc** (org.bukkit.Location) - The location where the mob should be spawned. - **level** (double) - The level of the mythical mob. - **count** (int) - The number of mobs to spawn. ``` -------------------------------- ### createSchematic(String, Player, World, boolean) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/SchematicHandler.html Creates a schematic and saves it to the CustomStructures plugin folder. ```APIDOC ## public static boolean createSchematic(String name, org.bukkit.entity.Player player, org.bukkit.World w, boolean compile) ### Description Creates a schematic and saves it to the schematics folder in the CustomStructures plugin. ### Parameters - **name** (String) - The name of the schematic. - **player** (org.bukkit.entity.Player) - The player performing the action. - **w** (org.bukkit.World) - The world context. - **compile** (boolean) - Whether the schematic should be compiled. ### Returns - **boolean** - True if the operation was successful. ``` -------------------------------- ### constructItem(ConfigurationSection configurationSection) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/customitems/CustomLootItem.html Processes the configuration section to construct the custom loot item. ```APIDOC ## Method: constructItem ### Description This method is called when the ConfigLootTable processes a custom loot item, using the provided configuration section to initialize the item. ### Parameters - **configurationSection** (org.bukkit.configuration.ConfigurationSection) - The configuration section containing the item details. ``` -------------------------------- ### AdvancedSubSchematics(FileConfiguration, CustomStructures) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/AdvancedSubSchematics.html Constructs an AdvancedSubSchematics instance by loading data from a configuration file. ```APIDOC ## Constructor: AdvancedSubSchematics(FileConfiguration, CustomStructures) ### Description Initializes the AdvancedSubSchematics feature using settings from a provided configuration file. ### Parameters - **configuration** (FileConfiguration) - Required - The configuration file containing sub-schematic data. - **plugin** (CustomStructures) - Required - The instance of the CustomStructures plugin. ``` -------------------------------- ### Load a structure from a YAML file Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Use this approach when defining structures via external configuration files. ```java StructureBuilder builder = new StructureBuilder("MyName", file); Structure struct = builder.build(); ``` -------------------------------- ### Configuration Renaming Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/utils/CSUtils.html Methods to rename keys within a Bukkit ConfigurationSection. ```APIDOC ## renameConfigString / renameConfigBoolean / renameConfigInteger / renameConfigStringList / renameStringConfigurationSection ### Description Renames a key from an original name to a new name within a specified ConfigurationSection. ### Signatures - `renameConfigString(ConfigurationSection, String, String)` - `renameConfigBoolean(ConfigurationSection, String, String)` - `renameConfigInteger(ConfigurationSection, String, String)` - `renameConfigStringList(ConfigurationSection, String, String)` - `renameStringConfigurationSection(ConfigurationSection, String, String)` ### Parameters - **configurationSection** (org.bukkit.configuration.ConfigurationSection) - The section to modify. - **originalName** (String) - The current key name. - **newName** (String) - The new key name. ``` -------------------------------- ### SubSchematics(FileConfiguration, CustomStructures) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/SubSchematics.html Constructs a SubSchematics instance by loading data from a configuration file. ```APIDOC ## Constructor: SubSchematics(FileConfiguration configuration, CustomStructures plugin) ### Description Initializes the SubSchematic feature by reading settings from the provided configuration file. ### Parameters - **configuration** (FileConfiguration) - Required - The configuration file containing sub-schematic settings. - **plugin** (CustomStructures) - Required - The instance of the CustomStructures plugin. ``` -------------------------------- ### getItem(String key) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/customitems/CustomItemManager.html Retrieves a custom item from the configuration file by its key. ```APIDOC ### Method: ItemStack getItem(String key) Retrieves an item from the item file. #### Parameters - **key** (String) - The key of the item to retrieve. #### Returns - **org.bukkit.inventory.ItemStack** - The item stack, or null if the item does not exist. ``` -------------------------------- ### spawn(Location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/Structure.html Spawns the structure schematic at the provided location. ```APIDOC ### boolean spawn(org.bukkit.Location location) Spawns the schematic at the given location. Note that this does not add the structure to the structure database automatically. - **location** (org.bukkit.Location) - The location to spawn the structure at. ``` -------------------------------- ### SubSchematic(String file, boolean placeAir, boolean useRotation, int weight, VerticalRepositioning verticalRepositioning) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/schematics/SubSchematic.html Creates a new SubSchematic instance with explicit property values. ```APIDOC ## Constructor: SubSchematic(String file, boolean placeAir, boolean useRotation, int weight, VerticalRepositioning verticalRepositioning) ### Description Initializes a SubSchematic object with specific configuration parameters. ### Parameters - **file** (String) - Required - The file path for the schematic. - **placeAir** (boolean) - Required - Whether the structure should place air blocks. - **useRotation** (boolean) - Required - Whether the structure should use sign rotation. - **weight** (int) - Required - The weight value for the sub-schematic. - **verticalRepositioning** (VerticalRepositioning) - Optional - Vertical repositioning settings. ``` -------------------------------- ### CustomStructureAddon(Plugin plugin) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/CustomStructureAddon.html Constructor to create a new addon instance for custom structures. ```APIDOC ### Constructor: CustomStructureAddon(Plugin plugin) Creates an addon for custom structures associated with the provided plugin. #### Parameters - **plugin** (org.bukkit.plugin.Plugin) - Required - The plugin instance. ``` -------------------------------- ### Create a structure programmatically Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Use this approach to define structure properties and limitations directly within the code. ```java StructureBuilder builder = new StructureBuilder("MyName", file); builder.setStructureLimitations(new StructureLimitations()); ... Structure struct = builder.build(); ``` -------------------------------- ### getSchematicsFolder() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/CustomStructuresAPI.html Returns the path to the schematics folder. ```APIDOC ## Method: getSchematicsFolder() ### Description Returns the path to the schematics folder. ### Returns - **String** - The schematics folder path. ``` -------------------------------- ### NpcHandler(File dataFolder, CustomStructures plugin) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/NpcHandler.html Constructor to initialize the NpcHandler with the plugin data folder and the plugin instance. ```APIDOC ### Constructor: NpcHandler(File dataFolder, CustomStructures plugin) Processes the NPC configuration. #### Parameters - **dataFolder** (File) - The base plugin data folder. - **plugin** (CustomStructures) - The instance to the Custom Structures plugin. ``` -------------------------------- ### StructureBuilder Constructors Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Initializes a new instance of the StructureBuilder class using either schematic files or configuration files. ```APIDOC ## Constructor: StructureBuilder(String name, String schematic) ### Description Builds a structure using a name and a schematic file path. ### Parameters - **name** (String) - The name of the structure. - **schematic** (String) - The schematic of the structure. ## Constructor: StructureBuilder(String name, File file) ### Description Builds a structure using a YAML configuration file. ### Parameters - **name** (String) - The name of the structure. - **file** (File) - The configuration file to read from. ``` -------------------------------- ### addItem(String key, ItemStack itemStack) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/customitems/CustomItemManager.html Adds a new custom item to the configuration file. Returns false if the key already exists. ```APIDOC ### Method: boolean addItem(String key, ItemStack itemStack) Adds an item to the custom items file. #### Parameters - **key** (String) - The unique key for the item. - **itemStack** (org.bukkit.inventory.ItemStack) - The item stack to store. #### Returns - **boolean** - True if the item was successfully added, false if the key already exists. ``` -------------------------------- ### StructureBuilder Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Methods available to configure and build the structure. ```APIDOC ## Method: build() ### Description Finalizes the configuration and returns the constructed Structure object. ### Returns - **Structure** - The built structure instance. ## Method: addLootTable(LootTable lootTable, double weight) ### Description Adds a loot table to the structure with a specified weight. ## Method: setPriority(int priority) ### Description Sets the spawning priority of the structure. ## Method: setProbability(int numerator, int denominator) ### Description Sets the probability of the structure spawning using a fraction. ## Method: save(File file) ### Description Saves the current structure configuration to a YAML file. ``` -------------------------------- ### registerAddon(CustomStructureAddon addon) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/AddonHandler.html Registers a new custom structure addon. ```APIDOC ### Method `void registerAddon(CustomStructureAddon addon)` ### Description Registers a custom addon to the plugin. ### Parameters - **addon** (CustomStructureAddon) - Required - The addon instance to register. ``` -------------------------------- ### addImplementation(BottomFillImpl bottomFill) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bottomfill/BottomFillProvider.html Registers a new BottomFill implementation to the provider. ```APIDOC ## static void addImplementation(BottomFillImpl bottomFill) ### Description Adds a BottomFill implementation to the provider. ### Parameters - **bottomFill** (BottomFillImpl) - Required - The bottom fill implementation to register. ``` -------------------------------- ### CustomStructuresAPI() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/CustomStructuresAPI.html Constructs the CustomStructuresAPI instance. Must be called after the plugin has been initialized. ```APIDOC ## Constructor: CustomStructuresAPI() ### Description Constructs the CustomStructuresAPI class to access the plugin's API features. ### Throws - **IllegalStateException** - If CustomStructures has not been initialized. ``` -------------------------------- ### save Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Saves the structure to a file. ```APIDOC ## void save(File file) ### Description Save the structure as a structure configuration file. This automatically saves the file in the structures folder. ### Parameters - **file** (File) - Required - The file to save. ### Throws - **IOException** - If an IO Exception occurs. ``` -------------------------------- ### getInstance() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/CustomStructures.html Retrieves the singleton instance of the CustomStructures plugin. ```APIDOC ## static CustomStructures getInstance() ### Description Returns the active instance of the CustomStructures plugin. This is the primary method to access the plugin's API from other classes. ### Returns - **CustomStructures** - The singleton instance of the plugin. ``` -------------------------------- ### getSchematics() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/SubSchematics.html Retrieves the list of currently configured sub-schematics. ```APIDOC ## Method: getSchematics() ### Description Returns the list of sub-schematics associated with this instance. ### Returns - **List** - A list of sub-schematic objects. ``` -------------------------------- ### MinecraftLootTable(String nameSpaceString) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/MinecraftLootTable.html Constructor to load an existing Minecraft loot table by its namespace string. ```APIDOC ## Constructor: MinecraftLootTable(String nameSpaceString) ### Description Loads an existing Minecraft loot table, including those provided by data packs. ### Parameters - **nameSpaceString** (String) - The loot table name space (e.g., "minecraft:chests/abandoned_mineshaft"). ``` -------------------------------- ### StructureBuilder Constructor Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Initializes a new instance of the StructureBuilder to define a structure. ```APIDOC ## Constructor: StructureBuilder(String name, File file) ### Description Creates a builder for a structure defined by a YAML configuration file. ### Parameters - **name** (String) - The name of the structure. - **file** (File) - The YAML configuration file. ## Constructor: StructureBuilder(String name, String schematic) ### Description Creates a builder for a structure defined programmatically. ### Parameters - **name** (String) - The name of the structure. - **schematic** (String) - The schematic file name or path. ``` -------------------------------- ### PriorityStructureQueue(List structures, Block block, Chunk chunk) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/PriorityStructureQueue.html Creates a new priority queue of structures. Only structures that return true for Structure.canSpawn(Block, Chunk) are added to the queue. ```APIDOC ## Constructor: PriorityStructureQueue ### Description Create a priority queue of structures for a specific spawn location. Only structures that satisfy the spawn conditions for the provided block and chunk are included. ### Parameters - **structures** (List) - Required - The list of structures to attempt and add to the queue. - **block** (org.bukkit.block.Block) - Required - The block to test the spawn conditions for. - **chunk** (org.bukkit.Chunk) - Required - The chunk to test the spawn conditions for. ``` -------------------------------- ### getCustomStructureAddons() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/AddonHandler.html Retrieves the list of currently registered custom structure addons. ```APIDOC ### Method `List getCustomStructureAddons()` ### Description Returns a list of all custom structure addons that have been registered with the handler. ### Returns - **List** - The list of registered addons. ``` -------------------------------- ### registerCustomAddon(CustomStructureAddon) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/CustomStructuresAPI.html Registers a custom addon to the plugin, allowing for custom configuration sections. ```APIDOC ## Method: registerCustomAddon(CustomStructureAddon customStructureAddon) ### Description Registers an addon to the Custom Structure plugin. This should be called in the plugin's onEnable method. ### Parameters - **customStructureAddon** (CustomStructureAddon) - The addon to register. ``` -------------------------------- ### getBlocks() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/ignoreblocks/IgnoreBlocks.html Retrieves the list of materials that are currently set to be ignored. ```APIDOC ## List getBlocks() ### Description Returns a list of materials that are ignored by the structure system. ### Returns - **List** - A list of materials to be ignored. ``` -------------------------------- ### void saveToFile(ConfigurationSection configurationSection) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/StructureProperty.html Saves the property to the specified configuration section. This method is currently marked as deprecated and is not implemented. ```APIDOC ## void saveToFile(ConfigurationSection configurationSection) ### Description Saves the property to the specified configuration section. Note: This method is deprecated and not implemented yet. ### Parameters - **configurationSection** (org.bukkit.configuration.ConfigurationSection) - Required - The configuration section to save the property to. ``` -------------------------------- ### Retrieve a structure from the database Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/io/StructureDatabaseHandler.html Use this pattern to asynchronously fetch a structure by location and handle potential exceptions. ```java databaseHandler.getStructure(myLocation) .thenAccept(structure -> { System.out.println(structure.getName()); }) .exceptionally(exception -> { System.out.println("Structure not found or an error occurred"); return null; }); ``` -------------------------------- ### Structure API Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/Structure.html Methods available for interacting with a Structure instance. ```APIDOC ## boolean canSpawn(Block block, Chunk chunk) ### Description Checks to see if the structure can spawn at the specified block and chunk location. ## boolean spawn(Location location) ### Description Spawns the schematic at the given location. ## String getName() ### Description Retrieves the name of the structure. ## int getPriority() ### Description Retrieves the priority of the structure. ## String getSchematic() ### Description Retrieves the name of the primary schematic associated with the structure. ``` -------------------------------- ### StandardLootItem Constructor Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/StandardLootItem.html Constructs a new StandardLootItem for use in loot tables. ```APIDOC ## StandardLootItem(String customName, String material, int amount, int weight, List lore, Map enchants) ### Description Creates a new loot item instance with specified properties. ### Parameters - **customName** (String) - The custom name of the item. - **material** (String) - The material type. - **amount** (int) - The quantity of the item. - **weight** (int) - The probability weight. - **lore** (List) - The item lore. - **enchants** (Map) - The item enchantments. ``` -------------------------------- ### getLatestVersion() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bstats/UpdateChecker.html Retrieves the latest version string from the SpigotMC resource. ```APIDOC ## Method: getLatestVersion() ### Description Fetches the latest version string available for the project. ### Returns - **String** - The latest version string. ``` -------------------------------- ### setLootTables(ConfigurationSection) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/StructureBuilder.html Sets the loot tables for the structure using a Bukkit ConfigurationSection. ```APIDOC ## void setLootTables(ConfigurationSection lootableConfig) ### Description Set the loot tables from a configuration section. ### Parameters - **lootableConfig** (org.bukkit.configuration.ConfigurationSection) - Required - The loot table configuration section. ``` -------------------------------- ### compileOnly(String, Player, World) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/SchematicHandler.html Compiles a selection into a compiled schematic. ```APIDOC ## public static boolean compileOnly(String name, org.bukkit.entity.Player player, org.bukkit.World w) ### Description Only compiles a selection into a compiled schematic. ### Parameters - **name** (String) - The name of the schematic. - **player** (org.bukkit.entity.Player) - The player performing the action. - **w** (org.bukkit.World) - The world context. ### Returns - **boolean** - True if the operation was successful. ``` -------------------------------- ### fillBrewerInventory(BrewerInventory brewerInventory, Random random, Location location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/MinecraftLootTable.html Fills a brewing stand inventory with items based on the loot table. ```APIDOC ## Method: fillBrewerInventory ### Description Fills a brewer with items defined by the loot table. ### Parameters - **brewerInventory** (org.bukkit.inventory.BrewerInventory) - The brewer inventory to fill. - **random** (java.util.Random) - The randomizer instance. - **location** (org.bukkit.Location) - The location of the brewer. ``` -------------------------------- ### spawnNpc Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/citizens/CitizensNpcHook.html Spawns a Citizen NPC at a specified location using the provided handler and alias. ```APIDOC ## void spawnNpc(NpcHandler npcHandler, String alias, org.bukkit.Location loc) ### Description Spawns a Citizen NPC based on the provided configuration handler and alias at the specified Bukkit location. ### Parameters - **npcHandler** (NpcHandler) - The handler for the NPC configuration. - **alias** (String) - The alias of the NPC as defined in the "npc" configuration file. - **loc** (org.bukkit.Location) - The location where the NPC should be spawned. ``` -------------------------------- ### createSection() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSectionProvider.html Creates and returns a new StructureSection instance. ```APIDOC ## StructureSectionProvider.createSection() ### Description Creates a new StructureSection instance to be served by the provider. ### Signature `@NotNull StructureSection createSection()` ### Returns - **StructureSection** - The StructureSection provided by this implementation. ``` -------------------------------- ### placeSchematic(Location, String, boolean, Structure) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/SchematicHandler.html Handles the placement of a schematic into the world. ```APIDOC ## public static void placeSchematic(org.bukkit.Location loc, String filename, boolean useAir, Structure structure) ### Description Handles the schematic placement. This method must be called on the main Server thread. ### Parameters - **loc** (org.bukkit.Location) - The location to place the schematic. - **filename** (String) - The file name of the schematic. - **useAir** (boolean) - Whether air blocks should be included. - **structure** (Structure) - The structure object being spawned. ### Throws - **com.sk89q.worldedit.WorldEditException** - If WorldEdit encounters an error. - **IOException** - If an error occurs during file reading. ``` -------------------------------- ### convertSpawnYValue Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/utils/SpawnYConversion.html Converts a given SpawnY value string into the updated 1.17 format. ```APIDOC ## static String convertSpawnYValue(String value) ### Description Converts the provided SpawnY value into the new format required for the 1.17 update. ### Parameters - **value** (String) - The SpawnY value to convert. ### Returns - **String** - The converted SpawnY value. ``` -------------------------------- ### CustomLootItem(LootTable lootTable, String itemID, int weight, String amount) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/customitems/CustomLootItem.html Constructs a new CustomLootItem instance. ```APIDOC ## Constructor: CustomLootItem ### Description Creates a new instance of a custom loot item. ### Parameters - **lootTable** (LootTable) - The loot table associated with this item. - **itemID** (String) - The unique identifier for the item. - **weight** (int) - The weight of the item for loot generation. - **amount** (String) - The amount of the item. ``` -------------------------------- ### getResponse() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/io/NearbyStructuresResponse.html Retrieves the full list of nearby structures found. ```APIDOC ### Method `List getResponse()` ### Description Returns the list of nearby structures contained within the response. ### Returns - `List` - The list of nearby structures. ``` -------------------------------- ### getNPCByName(String name) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/NpcHandler.html Retrieves NPC information by its name. ```APIDOC ### Method: getNPCByName(String name) Get the NPC by its name. #### Parameters - **name** (String) - The name of the NPC. #### Returns - **NpcHandler.NpcInfo** - The NPC Info. ``` -------------------------------- ### IgnoreBlocks_1_17() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/ignoreblocks/IgnoreBlocks_1_17.html Constructor for the IgnoreBlocks_1_17 class. ```APIDOC ## Constructor: IgnoreBlocks_1_17() ### Description Constructs a new instance of the IgnoreBlocks_1_17 class for managing ignored blocks in Minecraft 1.17 - 1.18. ``` -------------------------------- ### Getter and Setter Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/schematics/SubSchematic.html Methods to retrieve and modify properties of a SubSchematic instance. ```APIDOC ## Methods ### getFile() Returns the file path of the sub-schematic. ### setFile(String file) Sets the file path of the sub-schematic. ### isPlacingAir() Returns true if the sub-schematic is configured to place air. ### setPlaceAir(boolean placeAir) Configures whether the sub-schematic should place air. ### isUsingRotation() Returns true if the sub-schematic uses sign rotation. ### setUseRotation(boolean useRotation) Configures whether the sub-schematic should use sign rotation. ### getWeight() Returns the weight of the schematic (returns 0 for simple configurations). ### getVerticalRepositioning() Returns the VerticalRepositioning settings, or null if not configured. ``` -------------------------------- ### onStructureSpawn Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSign.html The primary method to implement when creating a custom structure sign. This method is triggered when a structure is spawned. ```APIDOC ## abstract boolean onStructureSpawn(@NotNull Location location, @NotNull Structure structure) ### Description This method is called when a structure is spawned. Implement this method to define custom logic for your sign, utilizing the provided get...Argument methods to parse sign lines. ### Parameters - **location** (org.bukkit.Location) - The location of the sign. - **structure** (Structure) - The structure that was spawned. ### Returns - **boolean** - Returns true if the sign should be removed after spawning, false if it should remain. ``` -------------------------------- ### registerStructureSectionProvider(StructureSectionProvider) Source: https://ryandw11.github.io/CustomStructures/index-files/index-15.html Registers a StructureSectionProvider to the addon. ```APIDOC ## registerStructureSectionProvider(StructureSectionProvider) ### Description Register StructureSectionProvider to the addon. ### Method void registerStructureSectionProvider(StructureSectionProvider provider) ### Parameters - **provider** (StructureSectionProvider) - Required - The provider to register. ``` -------------------------------- ### registerCustomAddon(CustomStructureAddon) Source: https://ryandw11.github.io/CustomStructures/index-files/index-15.html Registers a custom addon to the Custom Structure plugin. ```APIDOC ## registerCustomAddon(CustomStructureAddon) ### Description Registers a custom addon to the Custom Structure plugin. ### Method void registerCustomAddon(CustomStructureAddon addon) ### Parameters - **addon** (CustomStructureAddon) - Required - The addon to register. ``` -------------------------------- ### performFill Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bottomfill/DefaultBottomFill.html Executes the bottom fill operation for a spawned structure. This method is invoked by the plugin when the BottomFill option is enabled. ```APIDOC ## void performFill(Structure structure, org.bukkit.Location spawnLocation, org.bukkit.Location minLoc, org.bukkit.Location maxLoc, com.sk89q.worldedit.math.transform.AffineTransform transform) ### Description Called by the plugin when a bottom fill should be performed. This will only be called if the BottomFill option is enabled. ### Parameters - **structure** (Structure) - The structure that was spawned. - **spawnLocation** (org.bukkit.Location) - The spawn (paste) location of the structure. - **minLoc** (org.bukkit.Location) - The minimum location of the structure in the world to paste onto. - **maxLoc** (org.bukkit.Location) - The maximum location of the structure in the world to paste onto. - **transform** (com.sk89q.worldedit.math.transform.AffineTransform) - The affine transformation applied on this structure. ``` -------------------------------- ### getStylizedSpawnY(String value, Location location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/utils/NumberStylizer.html Stylizes a SpawnY value based on a provided location. ```APIDOC ## static int getStylizedSpawnY(String value, Location location) ### Description Stylize a SpawnY Value. ### Parameters - **value** (String) - The SpawnY Value. - **location** (org.bukkit.Location) - The location of the "top" block. ### Returns - (int) The location of the top block. ``` -------------------------------- ### fillContainerInventory(Inventory inventory, Random random, Location location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/MinecraftLootTable.html Fills a standard container inventory with items based on the loot table. ```APIDOC ## Method: fillContainerInventory ### Description Fills a container's inventory with items defined by the loot table. ### Parameters - **inventory** (org.bukkit.inventory.Inventory) - The inventory to fill. - **random** (java.util.Random) - The randomizer instance. - **location** (org.bukkit.Location) - The location of the container. ``` -------------------------------- ### spawnNpc(NpcHandler npcHandler, String name, org.bukkit.Location loc) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/citizens/CitizensEnabled.html Spawns a Citizen NPC at the specified location. ```APIDOC ## Method: spawnNpc(NpcHandler npcHandler, String name, org.bukkit.Location loc) ### Description Spawns a Citizen NPC at the given location using the provided NPC handler and name alias. ### Parameters - **npcHandler** (NpcHandler) - Required - The handler for the NPC configuration. - **name** (String) - Required - The alias of the NPC as defined in the NPC configuration file. - **loc** (org.bukkit.Location) - Required - The location where the NPC should be spawned. ``` -------------------------------- ### canSpawn(Block, Chunk) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/Structure.html Checks if the structure is eligible to spawn at the specified location. ```APIDOC ### boolean canSpawn(org.bukkit.block.Block block, org.bukkit.Chunk chunk) Checks to see if the structure can spawn, including validation of structure location properties. - **block** (org.bukkit.block.Block) - The block (Null means it is spawning in the void). - **chunk** (org.bukkit.Chunk) - The chunk. ``` -------------------------------- ### checkStructureConditions(Structure structure, Block spawnBlock, Chunk chunk) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSection.html Determines if a structure is allowed to spawn based on custom logic. ```APIDOC ## boolean checkStructureConditions(Structure structure, Block spawnBlock, Chunk chunk) ### Description Informs the plugin whether the structure is permitted to spawn at the given location. ### Parameters - **structure** (Structure) - The structure being spawned. - **spawnBlock** (Block) - The block where the structure is spawning. - **chunk** (Chunk) - The chunk where the structure is spawning. ### Returns - **boolean** - True if the structure can spawn, false otherwise. ``` -------------------------------- ### getNextStructure() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/PriorityStructureQueue.html Retrieves the next structure from the queue, or null if the queue is empty. ```APIDOC ## Method: getNextStructure() ### Description Get the next structure from the priority queue. ### Returns - **Structure** (Nullable) - The next structure in the queue, or null if the queue is empty. ``` -------------------------------- ### UpdateChecker(JavaPlugin plugin, int projectID) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/bstats/UpdateChecker.html Constructs a new UpdateChecker instance for a specific plugin and project ID. ```APIDOC ## Constructor: UpdateChecker(JavaPlugin plugin, int projectID) ### Description Initializes the update checker for the provided Bukkit plugin using the specified SpigotMC project ID. ### Parameters - **plugin** (org.bukkit.plugin.java.JavaPlugin) - Required - The plugin instance to check for updates. - **projectID** (int) - Required - The SpigotMC project ID. ``` -------------------------------- ### fillFurnaceInventory(FurnaceInventory furnaceInventory, Random random, Location location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/MinecraftLootTable.html Fills a furnace inventory with items based on the loot table. ```APIDOC ## Method: fillFurnaceInventory ### Description Fills a furnace inventory with items defined by the loot table. ### Parameters - **furnaceInventory** (org.bukkit.inventory.FurnaceInventory) - The furnace inventory to fill. - **random** (java.util.Random) - The randomizer instance. - **location** (org.bukkit.Location) - The location of the furnace. ``` -------------------------------- ### spawnNpc(NpcHandler npcHandler, String alias, Location loc) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/citizens/CitizensDisabled.html Spawns a Citizen NPC. In this dummy implementation, this method performs no action. ```APIDOC ## void spawnNpc(NpcHandler npcHandler, String alias, org.bukkit.Location loc) ### Description Spawns a Citizen NPC. This is a dummy implementation used when the Citizens plugin is not available. ### Parameters - **npcHandler** (NpcHandler) - The handler for the NPC config. - **alias** (String) - The alias of the NPC in the "npc" configuration file. - **loc** (org.bukkit.Location) - The location where to spawn the NPC. ``` -------------------------------- ### Structure Metadata Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSign.html Methods to retrieve information about the structure and sign orientation. ```APIDOC ## Structure Metadata Methods ### Description Retrieve spatial information regarding the sign and the associated structure. ### Methods - **getSignRotation()**: Returns the rotation of the sign in radians. - **getStructureRotation()**: Returns the rotation of the structure in radians. - **getStructureMinimumLocation()**: Returns the minimum corner of the structure schematic. - **getStructureMaximumLocation()**: Returns the maximum corner of the structure schematic. ``` -------------------------------- ### getFirst() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/io/NearbyStructuresResponse.html Retrieves the closest nearby structure from the response. ```APIDOC ### Method `@Nullable NearbyStructuresResponse.NearbyStructureContainer getFirst()` ### Description Returns the closest nearby structure. It is recommended to call `hasEntries()` before using this method. ### Returns - `NearbyStructuresResponse.NearbyStructureContainer` - The closest nearby structure, or null if no structures were found. ``` -------------------------------- ### NearbyStructuresRequest Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/io/NearbyStructuresRequest.html Methods to retrieve information from an existing NearbyStructuresRequest instance. ```APIDOC ## Method: getLocation() Returns the location associated with the request. ## Method: getName() Returns the name of the structure if specified, otherwise null. ## Method: hasName() Returns true if a specific structure name filter is applied. ## Method: getLimit() Returns the maximum number of structures requested. ``` -------------------------------- ### replacePAPIPlaceholders(String text) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/CustomStructures.html Resolves PlaceholderAPI placeholders within a given string. ```APIDOC ## static String replacePAPIPlaceholders(String text) ### Description Processes a string to replace any PlaceholderAPI placeholders with their corresponding values. ### Parameters - **text** (String) - The string containing placeholders to be resolved. ### Returns - **String** - The processed string with placeholders replaced. ``` -------------------------------- ### placeSchematic(Location, String, boolean, Structure, int) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/SchematicHandler.html Pastes a structure schematic into the world at a specific location with a defined iteration count. ```APIDOC ## public static void placeSchematic(org.bukkit.Location loc, String filename, boolean useAir, Structure structure, int iteration) ### Description Handles the actual pasting of the structure. This method must be called on the main Server thread. ### Parameters - **loc** (org.bukkit.Location) - The location to place the schematic. - **filename** (String) - The file name of the schematic (e.g., demo.schematic). - **useAir** (boolean) - Whether air blocks should be included in the schematic. - **structure** (Structure) - The structure object being spawned. - **iteration** (int) - The number of iterations in a structure. ### Throws - **com.sk89q.worldedit.WorldEditException** - If WorldEdit encounters an error during pasting. - **IOException** - If an error occurs during file reading. ``` -------------------------------- ### cleanUp() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/NpcHandler.html Cleans up the NPC data managed by the handler. ```APIDOC ### Method: cleanUp() Cleans up the NPC data. ``` -------------------------------- ### NearbyStructuresRequest Constructors Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/io/NearbyStructuresRequest.html Constructors for creating a new request to find structures near a location, with optional filters for structure type/name and result limits. ```APIDOC ## Constructor: NearbyStructuresRequest(Location location) ## Constructor: NearbyStructuresRequest(Location location, int limit) ## Constructor: NearbyStructuresRequest(Location location, Structure structure) ## Constructor: NearbyStructuresRequest(Location location, Structure structure, int limit) ## Constructor: NearbyStructuresRequest(Location location, String structureName) ## Constructor: NearbyStructuresRequest(Location location, String structureName, int limit) ### Description Creates a request object to be passed to StructureDatabaseHandler.findNearby(). ### Parameters - **location** (org.bukkit.Location) - Required - The center location for the search. - **limit** (int) - Optional - The maximum number of structures to return. - **structure** (Structure) - Optional - The specific structure type to filter by. - **structureName** (String) - Optional - The name of the specific structure to filter by. ``` -------------------------------- ### getName() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/LootTable.html Retrieves the name of the LootTable. ```APIDOC ## String getName() ### Description Returns the name of the LootTable. ### Returns - **String** - The name of the LootTable. ``` -------------------------------- ### getName() Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/Structure.html Retrieves the name of the structure. ```APIDOC ### String getName() Returns the name of the structure. ``` -------------------------------- ### Argument Retrieval Methods Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/StructureSign.html Methods provided by the base class to parse and retrieve data from sign lines. ```APIDOC ## Argument Retrieval Methods ### Description Use these methods to access data from the sign lines. Argument numbers correspond to lines on the sign (0 is the second line). ### Methods - **hasArgument(int argNumber)**: Check if an argument exists at the specified line. - **getStringArgument(int argNumber)**: Get an argument as a String. - **getIntArgument(int argNumber)**: Get an argument as an Integer. - **getDoubleArgument(int argNumber)**: Get an argument as a Double. - **getRangedIntArgument(int argNumber)**: Get an argument as a range (Pair). - **calculateRangedIntArgument(int argNumber)**: Get a random number from a ranged integer argument. ``` -------------------------------- ### NPCSign.onStructureSpawn Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/structuresigns/NPCSign.html The onStructureSpawn method is triggered when a structure containing this sign is spawned. It allows for custom logic execution and determines whether the sign should be removed after processing. ```APIDOC ## boolean onStructureSpawn(@NotNull Location location, @NotNull Structure structure) ### Description The method that is called when a structure is spawned. This method should be implemented to perform actions based on the sign's arguments. ### Parameters - **location** (org.bukkit.Location) - Required - The location of the sign. - **structure** (Structure) - Required - The structure that was spawned. ### Returns - **boolean** - True if the sign should be removed, false if it should stay. ``` -------------------------------- ### addLootTable Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/LootTableHandler.html Adds a loot table to the handler. Note that addons should prefer using CustomStructureAddon.registerLootTable(LootTable) as the handler is reset on reload. ```APIDOC ## boolean addLootTable(LootTable lootTable) ### Description Adds a loot table to the LootTableHandler. ### Parameters - **lootTable** (LootTable) - Required - The loot table to add. ### Returns - **boolean** - True if the loot table was added successfully. ``` -------------------------------- ### StructureHandler.putSpawnedStructure Source: https://ryandw11.github.io/CustomStructures/index-files/index-14.html Method to track spawned structures. ```APIDOC ## putSpawnedStructure(Location, Structure) ### Description Add a structure to the list of spawned structures. ### Parameters - **location** (Location) - The location where the structure was spawned. - **structure** (Structure) - The structure object. ``` -------------------------------- ### replaceBrewerContent Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/LootTableReplacer.html Replaces the contents of a brewer inventory using a specified loot table. ```APIDOC ## public static void replaceBrewerContent(LootTable lootTable, org.bukkit.inventory.BrewerInventory containerInventory) ### Description Replace the contents of a brewer with the loot table. ### Parameters - **lootTable** (LootTable) - The loot table to populate the brewer with. - **containerInventory** (org.bukkit.inventory.BrewerInventory) - The inventory of the brewer. ``` -------------------------------- ### setWeight Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/StandardLootItem.html Sets the weight of the loot item. ```APIDOC ## void setWeight(int weight) ### Description Updates the weight of the loot item. ### Parameters - **weight** (int) - The new weight value. ``` -------------------------------- ### getWeight Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/loottables/StandardLootItem.html Retrieves the weight of the loot item. ```APIDOC ## int getWeight() ### Description Returns the weight value assigned to this loot item. ### Returns - **int** - The weight of the loot item. ``` -------------------------------- ### replacePlaceHolders Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/utils/CSUtils.html Replaces placeholders within a command string based on structure and location data. ```APIDOC ## replacePlaceHolders ### Description Replaces placeholders on commands in the command group using provided location and structure context. ### Signature `public static String replacePlaceHolders(String command, org.bukkit.Location signLocation, org.bukkit.Location minLoc, org.bukkit.Location maxLoc, Structure structure)` ### Parameters - **command** (String) - The command string containing placeholders. - **signLocation** (org.bukkit.Location) - The location of the sign. - **minLoc** (org.bukkit.Location) - The minimum location of the structure. - **maxLoc** (org.bukkit.Location) - The maximum location of the structure. - **structure** (Structure) - The structure instance. ### Returns - **String** - The command with placeholders replaced. ``` -------------------------------- ### getCategory(String) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/AdvancedSubSchematics.html Retrieves a specific category by its name. ```APIDOC ## Method: getCategory(String) ### Description Returns the RandomCollection of sub-schematics associated with the specified category name. ### Parameters - **name** (String) - Required - The name of the category to retrieve. ``` -------------------------------- ### setSchematics(List) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/structure/properties/SubSchematics.html Replaces the current list of sub-schematics with a new list. ```APIDOC ## Method: setSchematics(List schematics) ### Description Sets the list of sub-schematics to be used. ### Parameters - **schematics** (List) - Required - The list of sub-schematics to set. ``` -------------------------------- ### rotateAround (Location) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/schematic/SchematicLocationUtils.html Rotates a Bukkit Location point around a specified center location by a given angle. ```APIDOC ## static Location rotateAround(Location point, Location center, double angle) ### Description Rotate the point around a center. ### Parameters - **point** (org.bukkit.Location) - The point to rotate. - **center** (org.bukkit.Location) - The center point. - **angle** (double) - The angle to rotate by. ### Returns - **Location** (org.bukkit.Location) - The final position. ``` -------------------------------- ### CitizensEnabled(CustomStructures plugin) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/citizens/CitizensEnabled.html Constructor for the CitizensEnabled class. ```APIDOC ## Constructor: CitizensEnabled(CustomStructures plugin) ### Description Initializes a new instance of the CitizensEnabled class with the provided CustomStructures plugin instance. ### Parameters - **plugin** (CustomStructures) - Required - The main plugin instance. ``` -------------------------------- ### registerLootTable(LootTable) Source: https://ryandw11.github.io/CustomStructures/index-files/index-15.html Registers a custom LootTable for use within an addon. ```APIDOC ## registerLootTable(LootTable) ### Description Register a custom LootTable for use. ### Method void registerLootTable(LootTable lootTable) ### Parameters - **lootTable** (LootTable) - Required - The loot table to register. ``` -------------------------------- ### registerLootTable(LootTable lootTable) Source: https://ryandw11.github.io/CustomStructures/com/ryandw11/structure/api/structaddon/CustomStructureAddon.html Registers a custom loot table for use. ```APIDOC ### Method: registerLootTable Registers a custom LootTable for use. #### Parameters - **lootTable** (LootTable) - Required - The LootTable to be registered. ```