diff --git a/common/addons/config-biome/src/main/java/com/dfsek/terra/addons/biome/command/biome/BiomeInfoCommand.java b/common/addons/config-biome/src/main/java/com/dfsek/terra/addons/biome/command/biome/BiomeInfoCommand.java index b208484a4..76d840cea 100644 --- a/common/addons/config-biome/src/main/java/com/dfsek/terra/addons/biome/command/biome/BiomeInfoCommand.java +++ b/common/addons/config-biome/src/main/java/com/dfsek/terra/addons/biome/command/biome/BiomeInfoCommand.java @@ -9,11 +9,8 @@ import com.dfsek.terra.api.command.annotation.Argument; import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.inject.ArgumentTarget; import com.dfsek.terra.api.entity.CommandSender; -import com.dfsek.terra.api.structure.ConfiguredStructure; import com.dfsek.terra.api.world.biome.TerraBiome; -import java.util.List; - @Command( arguments = { @Argument( diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructures.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructures.java index 3336fab68..2c5e20d2e 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructures.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructures.java @@ -1,7 +1,7 @@ package com.dfsek.terra.addons.structure; import com.dfsek.terra.api.properties.Properties; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import java.util.Set; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructuresTemplate.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructuresTemplate.java index 7d5d4ce5d..a01a6c756 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructuresTemplate.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/BiomeStructuresTemplate.java @@ -3,7 +3,7 @@ package com.dfsek.terra.addons.structure; import com.dfsek.tectonic.annotations.Default; import com.dfsek.tectonic.annotations.Value; import com.dfsek.tectonic.loading.object.ObjectTemplate; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import java.util.Collections; import java.util.Set; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureAddon.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureAddon.java index ee14c6a50..4824b8a11 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureAddon.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureAddon.java @@ -8,7 +8,7 @@ import com.dfsek.terra.api.addon.annotations.Version; import com.dfsek.terra.api.event.EventListener; import com.dfsek.terra.api.event.events.config.pack.ConfigPackPreLoadEvent; import com.dfsek.terra.api.injection.annotations.Inject; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; @Addon("config-structure") @Version("1.0.0") diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureFactory.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureFactory.java index 1d5f51022..b614514b0 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureFactory.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructureFactory.java @@ -2,7 +2,7 @@ package com.dfsek.terra.addons.structure; import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.config.ConfigFactory; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; public class StructureFactory implements ConfigFactory { @Override diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructurePopulator.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructurePopulator.java index 5fa54b7aa..8f3875e19 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructurePopulator.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/StructurePopulator.java @@ -3,7 +3,7 @@ package com.dfsek.terra.addons.structure; import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.config.WorldConfig; import com.dfsek.terra.api.profiler.ProfileFrame; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.structure.rotation.Rotation; import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.vector.Vector3; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/TerraStructure.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/TerraStructure.java index 7dd9134ce..79b37e7fa 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/TerraStructure.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/TerraStructure.java @@ -1,6 +1,6 @@ package com.dfsek.terra.addons.structure; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.StructureSpawn; import com.dfsek.terra.api.util.Range; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/AsyncStructureFinder.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/AsyncStructureFinder.java index 85fded7b7..9154f0599 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/AsyncStructureFinder.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/AsyncStructureFinder.java @@ -1,7 +1,7 @@ package com.dfsek.terra.addons.structure.command; import com.dfsek.terra.api.TerraPlugin; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.biome.generation.BiomeProvider; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/StructureLocateCommand.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/StructureLocateCommand.java index d49c5bc3d..dad15f00f 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/StructureLocateCommand.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/StructureLocateCommand.java @@ -16,7 +16,7 @@ import com.dfsek.terra.api.command.arg.IntegerArgumentParser; import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.injection.annotations.Inject; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.vector.Vector3; import java.util.Locale; diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/argument/StructureArgumentParser.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/argument/StructureArgumentParser.java index 989d3b852..aec0dcaa5 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/argument/StructureArgumentParser.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/argument/StructureArgumentParser.java @@ -5,7 +5,7 @@ import com.dfsek.terra.api.command.arg.ArgumentParser; import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.injection.annotations.Inject; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; public class StructureArgumentParser implements ArgumentParser { @Inject diff --git a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/completer/StructureCompleter.java b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/completer/StructureCompleter.java index 2fcddf53e..17007423f 100644 --- a/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/completer/StructureCompleter.java +++ b/common/addons/config-structure/src/main/java/com/dfsek/terra/addons/structure/command/structure/completer/StructureCompleter.java @@ -5,7 +5,7 @@ import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.injection.annotations.Inject; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import java.util.ArrayList; import java.util.List; diff --git a/common/api/src/main/java/com/dfsek/terra/api/structure/ConfiguredStructure.java b/common/api/src/main/java/com/dfsek/terra/api/structure/configured/ConfiguredStructure.java similarity index 65% rename from common/api/src/main/java/com/dfsek/terra/api/structure/ConfiguredStructure.java rename to common/api/src/main/java/com/dfsek/terra/api/structure/configured/ConfiguredStructure.java index 0d192ca29..1e04d096a 100644 --- a/common/api/src/main/java/com/dfsek/terra/api/structure/ConfiguredStructure.java +++ b/common/api/src/main/java/com/dfsek/terra/api/structure/configured/ConfiguredStructure.java @@ -1,5 +1,7 @@ -package com.dfsek.terra.api.structure; +package com.dfsek.terra.api.structure.configured; +import com.dfsek.terra.api.structure.Structure; +import com.dfsek.terra.api.structure.StructureSpawn; import com.dfsek.terra.api.util.Range; import com.dfsek.terra.api.util.collection.ProbabilityCollection; diff --git a/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Distributor.java b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Distributor.java new file mode 100644 index 000000000..04e783bf0 --- /dev/null +++ b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Distributor.java @@ -0,0 +1,4 @@ +package com.dfsek.terra.api.structure.feature; + +public interface Distributor { +} diff --git a/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Feature.java b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Feature.java new file mode 100644 index 000000000..f21a343dd --- /dev/null +++ b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Feature.java @@ -0,0 +1,11 @@ +package com.dfsek.terra.api.structure.feature; + +import com.dfsek.terra.api.structure.Structure; + +public interface Feature { + Structure getStructure(double x, double y, double z); + + Distributor getDistributor(); + + Locator getLocator(); +} diff --git a/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Locator.java b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Locator.java new file mode 100644 index 000000000..d637fb74d --- /dev/null +++ b/common/api/src/main/java/com/dfsek/terra/api/structure/feature/Locator.java @@ -0,0 +1,4 @@ +package com.dfsek.terra.api.structure.feature; + +public interface Locator { +} diff --git a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/PaperListener.java b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/PaperListener.java index 826a0172d..f8c25b0b4 100644 --- a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/PaperListener.java +++ b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/PaperListener.java @@ -1,7 +1,7 @@ package com.dfsek.terra.bukkit.listeners; import com.dfsek.terra.api.TerraPlugin; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.locate.AsyncStructureFinder; import com.dfsek.terra.bukkit.world.BukkitAdapter; diff --git a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/SpigotListener.java b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/SpigotListener.java index 20aacc383..340f9efa1 100644 --- a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/SpigotListener.java +++ b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/listeners/SpigotListener.java @@ -1,7 +1,7 @@ package com.dfsek.terra.bukkit.listeners; import com.dfsek.terra.api.TerraPlugin; -import com.dfsek.terra.api.structure.ConfiguredStructure; +import com.dfsek.terra.api.structure.configured.ConfiguredStructure; import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.locate.AsyncStructureFinder; import com.dfsek.terra.bukkit.world.BukkitAdapter;