mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2025-07-03 08:25:31 +00:00
@Meta all the things
This commit is contained in:
parent
6158cda740
commit
2373174132
@ -6,6 +6,7 @@ import com.dfsek.terra.addons.biome.pipeline.BiomePipeline;
|
|||||||
import com.dfsek.terra.addons.biome.pipeline.BiomePipelineProvider;
|
import com.dfsek.terra.addons.biome.pipeline.BiomePipelineProvider;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.Stage;
|
import com.dfsek.terra.addons.biome.pipeline.api.Stage;
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;
|
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;
|
||||||
|
|
||||||
@ -16,13 +17,13 @@ public class BiomePipelineTemplate extends BiomeProviderTemplate {
|
|||||||
private final TerraPlugin main;
|
private final TerraPlugin main;
|
||||||
@Value("pipeline.initial-size")
|
@Value("pipeline.initial-size")
|
||||||
@Default
|
@Default
|
||||||
private int initialSize = 2;
|
private @Meta int initialSize = 2;
|
||||||
|
|
||||||
@Value("pipeline.stages")
|
@Value("pipeline.stages")
|
||||||
private List<Stage> stages;
|
private @Meta List<@Meta Stage> stages;
|
||||||
|
|
||||||
@Value("pipeline.source")
|
@Value("pipeline.source")
|
||||||
private BiomeSource source;
|
private @Meta BiomeSource source;
|
||||||
|
|
||||||
public BiomePipelineTemplate(TerraPlugin main) {
|
public BiomePipelineTemplate(TerraPlugin main) {
|
||||||
this.main = main;
|
this.main = main;
|
||||||
|
@ -3,17 +3,18 @@ package com.dfsek.terra.addons.biome.pipeline.config;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|
||||||
public abstract class BiomeProviderTemplate implements ObjectTemplate<BiomeProvider> {
|
public abstract class BiomeProviderTemplate implements ObjectTemplate<BiomeProvider> {
|
||||||
@Value("resolution")
|
@Value("resolution")
|
||||||
@Default
|
@Default
|
||||||
protected int resolution = 1;
|
protected @Meta int resolution = 1;
|
||||||
@Value("blend.noise")
|
@Value("blend.noise")
|
||||||
@Default
|
@Default
|
||||||
protected NoiseSampler blend = NoiseSampler.zero();
|
protected @Meta NoiseSampler blend = NoiseSampler.zero();
|
||||||
@Value("blend.amplitude")
|
@Value("blend.amplitude")
|
||||||
@Default
|
@Default
|
||||||
protected double blendAmp = 0d;
|
protected @Meta double blendAmp = 0d;
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package com.dfsek.terra.addons.biome.pipeline.config;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.source.NoiseSource;
|
import com.dfsek.terra.addons.biome.pipeline.source.NoiseSource;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
@ -9,10 +10,10 @@ import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;
|
|||||||
|
|
||||||
public class NoiseSourceTemplate extends SourceTemplate {
|
public class NoiseSourceTemplate extends SourceTemplate {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
private NoiseSampler noise;
|
private @Meta NoiseSampler noise;
|
||||||
|
|
||||||
@Value("biomes")
|
@Value("biomes")
|
||||||
private ProbabilityCollection<TerraBiome> biomes;
|
private @Meta ProbabilityCollection<@Meta TerraBiome> biomes;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeSource get() {
|
public BiomeSource get() {
|
||||||
|
@ -3,9 +3,10 @@ package com.dfsek.terra.addons.biome.pipeline.config.stage;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.Stage;
|
import com.dfsek.terra.addons.biome.pipeline.api.Stage;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public abstract class StageTemplate implements ObjectTemplate<Stage> {
|
public abstract class StageTemplate implements ObjectTemplate<Stage> {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
protected NoiseSampler noise;
|
protected @Meta NoiseSampler noise;
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.addons.biome.pipeline.config.stage.mutator;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.mutator.BorderListMutator;
|
import com.dfsek.terra.addons.biome.pipeline.mutator.BorderListMutator;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
|
|
||||||
@ -11,16 +12,16 @@ import java.util.Map;
|
|||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public class BorderListMutatorTemplate extends MutatorStageTemplate {
|
public class BorderListMutatorTemplate extends MutatorStageTemplate {
|
||||||
@Value("from")
|
@Value("from")
|
||||||
private String from;
|
private @Meta String from;
|
||||||
|
|
||||||
@Value("default-replace")
|
@Value("default-replace")
|
||||||
private String defaultReplace;
|
private @Meta String defaultReplace;
|
||||||
|
|
||||||
@Value("default-to")
|
@Value("default-to")
|
||||||
private ProbabilityCollection<TerraBiome> defaultTo;
|
private @Meta ProbabilityCollection<@Meta TerraBiome> defaultTo;
|
||||||
|
|
||||||
@Value("replace")
|
@Value("replace")
|
||||||
private Map<TerraBiome, ProbabilityCollection<TerraBiome>> replace;
|
private @Meta Map<@Meta TerraBiome, @Meta ProbabilityCollection<@Meta TerraBiome>> replace;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -3,19 +3,20 @@ package com.dfsek.terra.addons.biome.pipeline.config.stage.mutator;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.mutator.BorderMutator;
|
import com.dfsek.terra.addons.biome.pipeline.mutator.BorderMutator;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public class BorderMutatorTemplate extends MutatorStageTemplate {
|
public class BorderMutatorTemplate extends MutatorStageTemplate {
|
||||||
@Value("from")
|
@Value("from")
|
||||||
private String from;
|
private @Meta String from;
|
||||||
|
|
||||||
@Value("replace")
|
@Value("replace")
|
||||||
private String replace;
|
private @Meta String replace;
|
||||||
|
|
||||||
@Value("to")
|
@Value("to")
|
||||||
private ProbabilityCollection<TerraBiome> to;
|
private @Meta ProbabilityCollection<@Meta TerraBiome> to;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeMutator get() {
|
public BiomeMutator get() {
|
||||||
|
@ -4,11 +4,12 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.stages.MutatorStage;
|
import com.dfsek.terra.addons.biome.pipeline.stages.MutatorStage;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public abstract class MutatorStageTemplate implements ObjectTemplate<BiomeMutator> {
|
public abstract class MutatorStageTemplate implements ObjectTemplate<BiomeMutator> {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
protected NoiseSampler noise;
|
protected @Meta NoiseSampler noise;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public abstract BiomeMutator get();
|
public abstract BiomeMutator get();
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.addons.biome.pipeline.config.stage.mutator;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.mutator.ReplaceListMutator;
|
import com.dfsek.terra.addons.biome.pipeline.mutator.ReplaceListMutator;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
|
|
||||||
@ -11,13 +12,13 @@ import java.util.Map;
|
|||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public class ReplaceListMutatorTemplate extends MutatorStageTemplate {
|
public class ReplaceListMutatorTemplate extends MutatorStageTemplate {
|
||||||
@Value("default-from")
|
@Value("default-from")
|
||||||
private String defaultFrom;
|
private @Meta String defaultFrom;
|
||||||
|
|
||||||
@Value("default-to")
|
@Value("default-to")
|
||||||
private ProbabilityCollection<TerraBiome> defaultTo;
|
private @Meta ProbabilityCollection<@Meta TerraBiome> defaultTo;
|
||||||
|
|
||||||
@Value("to")
|
@Value("to")
|
||||||
private Map<TerraBiome, ProbabilityCollection<TerraBiome>> replace;
|
private @Meta Map<@Meta TerraBiome, @Meta ProbabilityCollection<@Meta TerraBiome>> replace;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeMutator get() {
|
public BiomeMutator get() {
|
||||||
|
@ -3,16 +3,17 @@ package com.dfsek.terra.addons.biome.pipeline.config.stage.mutator;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
import com.dfsek.terra.addons.biome.pipeline.api.BiomeMutator;
|
||||||
import com.dfsek.terra.addons.biome.pipeline.mutator.ReplaceMutator;
|
import com.dfsek.terra.addons.biome.pipeline.mutator.ReplaceMutator;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public class ReplaceMutatorTemplate extends MutatorStageTemplate {
|
public class ReplaceMutatorTemplate extends MutatorStageTemplate {
|
||||||
@Value("from")
|
@Value("from")
|
||||||
private String from;
|
private @Meta String from;
|
||||||
|
|
||||||
@Value("to")
|
@Value("to")
|
||||||
private ProbabilityCollection<TerraBiome> to;
|
private @Meta ProbabilityCollection<@Meta TerraBiome> to;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeMutator get() {
|
public BiomeMutator get() {
|
||||||
|
@ -2,12 +2,13 @@ package com.dfsek.terra.addons.biome.single;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|
||||||
public class SingleBiomeProviderTemplate implements ObjectTemplate<BiomeProvider> {
|
public class SingleBiomeProviderTemplate implements ObjectTemplate<BiomeProvider> {
|
||||||
@Value("biome")
|
@Value("biome")
|
||||||
private TerraBiome biome;
|
private @Meta TerraBiome biome;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeProvider get() {
|
public BiomeProvider get() {
|
||||||
|
@ -6,21 +6,22 @@ import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
|||||||
import com.dfsek.terra.addons.chunkgenerator.palette.PaletteHolder;
|
import com.dfsek.terra.addons.chunkgenerator.palette.PaletteHolder;
|
||||||
import com.dfsek.terra.addons.chunkgenerator.palette.PaletteInfo;
|
import com.dfsek.terra.addons.chunkgenerator.palette.PaletteInfo;
|
||||||
import com.dfsek.terra.addons.chunkgenerator.palette.SlantHolder;
|
import com.dfsek.terra.addons.chunkgenerator.palette.SlantHolder;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.world.generator.Palette;
|
import com.dfsek.terra.api.world.generator.Palette;
|
||||||
|
|
||||||
public class BiomePaletteTemplate implements ObjectTemplate<PaletteInfo> {
|
public class BiomePaletteTemplate implements ObjectTemplate<PaletteInfo> {
|
||||||
@Value("palette")
|
@Value("palette")
|
||||||
private PaletteHolder palette;
|
private @Meta PaletteHolder palette;
|
||||||
|
|
||||||
@Value("slant")
|
@Value("slant")
|
||||||
@Default
|
@Default
|
||||||
private SlantHolder slant = null;
|
private @Meta SlantHolder slant = null;
|
||||||
|
|
||||||
@Value("ocean.level")
|
@Value("ocean.level")
|
||||||
private int seaLevel;
|
private @Meta int seaLevel;
|
||||||
|
|
||||||
@Value("ocean.palette")
|
@Value("ocean.palette")
|
||||||
private Palette oceanPalette;
|
private @Meta Palette oceanPalette;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PaletteInfo get() {
|
public PaletteInfo get() {
|
||||||
|
@ -9,6 +9,7 @@ import com.dfsek.terra.api.TerraPlugin;
|
|||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
import com.dfsek.terra.api.config.ConfigPack;
|
import com.dfsek.terra.api.config.ConfigPack;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.world.biome.Biome;
|
import com.dfsek.terra.api.world.biome.Biome;
|
||||||
@ -27,7 +28,7 @@ public class BiomeTemplate implements AbstractableTemplate, ValidatedConfigTempl
|
|||||||
|
|
||||||
@Value("id")
|
@Value("id")
|
||||||
@Final
|
@Final
|
||||||
private String id;
|
private @Meta String id;
|
||||||
|
|
||||||
@Value("extends")
|
@Value("extends")
|
||||||
@Final
|
@Final
|
||||||
@ -36,78 +37,78 @@ public class BiomeTemplate implements AbstractableTemplate, ValidatedConfigTempl
|
|||||||
|
|
||||||
@Value("variables")
|
@Value("variables")
|
||||||
@Default
|
@Default
|
||||||
private Map<String, Double> variables = new HashMap<>();
|
private @Meta Map<String, @Meta Double> variables = new HashMap<>();
|
||||||
|
|
||||||
@Value("beta.carving.equation")
|
@Value("beta.carving.equation")
|
||||||
@Default
|
@Default
|
||||||
private NoiseSampler carvingEquation = NoiseSampler.zero();
|
private @Meta NoiseSampler carvingEquation = NoiseSampler.zero();
|
||||||
|
|
||||||
@Value("vanilla")
|
@Value("vanilla")
|
||||||
private ProbabilityCollection<Biome> vanilla;
|
private @Meta ProbabilityCollection<Biome> vanilla;
|
||||||
|
|
||||||
@Value("biome-noise")
|
@Value("biome-noise")
|
||||||
@Default
|
@Default
|
||||||
private NoiseSampler biomeNoise = NoiseSampler.zero();
|
private @Meta NoiseSampler biomeNoise = NoiseSampler.zero();
|
||||||
|
|
||||||
@Value("blend.distance")
|
@Value("blend.distance")
|
||||||
@Default
|
@Default
|
||||||
private int blendDistance = 3;
|
private @Meta int blendDistance = 3;
|
||||||
|
|
||||||
@Value("blend.weight")
|
@Value("blend.weight")
|
||||||
@Default
|
@Default
|
||||||
private double blendWeight = 1;
|
private @Meta double blendWeight = 1;
|
||||||
|
|
||||||
@Value("blend.step")
|
@Value("blend.step")
|
||||||
@Default
|
@Default
|
||||||
private int blendStep = 4;
|
private @Meta int blendStep = 4;
|
||||||
|
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
private NoiseSampler noiseEquation;
|
private @Meta NoiseSampler noiseEquation;
|
||||||
|
|
||||||
@Value("ocean.level")
|
@Value("ocean.level")
|
||||||
@Default
|
@Default
|
||||||
private int seaLevel = 62;
|
private @Meta int seaLevel = 62;
|
||||||
|
|
||||||
@Value("elevation.equation")
|
@Value("elevation.equation")
|
||||||
@Default
|
@Default
|
||||||
private NoiseSampler elevationEquation = NoiseSampler.zero();
|
private @Meta NoiseSampler elevationEquation = NoiseSampler.zero();
|
||||||
|
|
||||||
@Value("elevation.weight")
|
@Value("elevation.weight")
|
||||||
@Default
|
@Default
|
||||||
private double elevationWeight = 1;
|
private @Meta double elevationWeight = 1;
|
||||||
|
|
||||||
@Value("slabs.enable")
|
@Value("slabs.enable")
|
||||||
@Default
|
@Default
|
||||||
private boolean doSlabs = false;
|
private @Meta boolean doSlabs = false;
|
||||||
|
|
||||||
@Value("slabs.threshold")
|
@Value("slabs.threshold")
|
||||||
@Default
|
@Default
|
||||||
private double slabThreshold = 0.0075D;
|
private @Meta double slabThreshold = 0.0075D;
|
||||||
|
|
||||||
@Value("slabs.palettes")
|
@Value("slabs.palettes")
|
||||||
@Default
|
@Default
|
||||||
private Map<BlockType, Palette> slabPalettes;
|
private @Meta Map<@Meta BlockType, @Meta Palette> slabPalettes;
|
||||||
|
|
||||||
@Value("slabs.stair-palettes")
|
@Value("slabs.stair-palettes")
|
||||||
@Default
|
@Default
|
||||||
private Map<BlockType, Palette> stairPalettes;
|
private @Meta Map<@Meta BlockType, @Meta Palette> stairPalettes;
|
||||||
|
|
||||||
@Value("interpolate-elevation")
|
@Value("interpolate-elevation")
|
||||||
@Default
|
@Default
|
||||||
private boolean interpolateElevation = true;
|
private @Meta boolean interpolateElevation = true;
|
||||||
|
|
||||||
@Value("color")
|
@Value("color")
|
||||||
@Final
|
@Final
|
||||||
@Default
|
@Default
|
||||||
private int color = 0;
|
private @Meta int color = 0;
|
||||||
|
|
||||||
@Value("tags")
|
@Value("tags")
|
||||||
@Default
|
@Default
|
||||||
private Set<String> tags = new HashSet<>();
|
private @Meta Set<@Meta String> tags = new HashSet<>();
|
||||||
|
|
||||||
@Value("colors")
|
@Value("colors")
|
||||||
@Default
|
@Default
|
||||||
private Map<String, Integer> colors = new HashMap<>(); // Plain ol' map, so platforms can decide what to do with colors (if anything).
|
private @Meta Map<String, @Meta Integer> colors = new HashMap<>(); // Plain ol' map, so platforms can decide what to do with colors (if anything).
|
||||||
|
|
||||||
public BiomeTemplate(ConfigPack pack, TerraPlugin main) {
|
public BiomeTemplate(ConfigPack pack, TerraPlugin main) {
|
||||||
this.pack = pack;
|
this.pack = pack;
|
||||||
|
@ -6,6 +6,7 @@ import com.dfsek.tectonic.annotations.Final;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.ConstantRange;
|
import com.dfsek.terra.api.util.ConstantRange;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collection.MaterialSet;
|
import com.dfsek.terra.api.util.collection.MaterialSet;
|
||||||
@ -21,76 +22,76 @@ public class CarverTemplate implements AbstractableTemplate {
|
|||||||
|
|
||||||
@Value("step")
|
@Value("step")
|
||||||
@Default
|
@Default
|
||||||
private int step = 2;
|
private @Meta int step = 2;
|
||||||
|
|
||||||
@Value("recalculate-magnitude")
|
@Value("recalculate-magnitude")
|
||||||
@Default
|
@Default
|
||||||
private double recaclulateMagnitude = 4;
|
private @Meta double recaclulateMagnitude = 4;
|
||||||
|
|
||||||
@Value("recalculate-direction")
|
@Value("recalculate-direction")
|
||||||
@Default
|
@Default
|
||||||
private Range recalc = new ConstantRange(8, 10);
|
private @Meta Range recalc = new ConstantRange(8, 10);
|
||||||
|
|
||||||
@Value("length")
|
@Value("length")
|
||||||
private Range length;
|
private @Meta Range length;
|
||||||
|
|
||||||
@Value("start.x")
|
@Value("start.x")
|
||||||
private double startX;
|
private @Meta double startX;
|
||||||
|
|
||||||
@Value("start.y")
|
@Value("start.y")
|
||||||
private double startY;
|
private @Meta double startY;
|
||||||
|
|
||||||
@Value("start.z")
|
@Value("start.z")
|
||||||
private double startZ;
|
private @Meta double startZ;
|
||||||
|
|
||||||
@Value("start.radius.x")
|
@Value("start.radius.x")
|
||||||
private String radMX;
|
private @Meta String radMX;
|
||||||
|
|
||||||
@Value("start.radius.y")
|
@Value("start.radius.y")
|
||||||
private String radMY;
|
private @Meta String radMY;
|
||||||
|
|
||||||
@Value("start.radius.z")
|
@Value("start.radius.z")
|
||||||
private String radMZ;
|
private @Meta String radMZ;
|
||||||
|
|
||||||
@Value("start.height")
|
@Value("start.height")
|
||||||
private Range height;
|
private @Meta Range height;
|
||||||
|
|
||||||
@Value("cut.bottom")
|
@Value("cut.bottom")
|
||||||
@Default
|
@Default
|
||||||
private int cutBottom = 0;
|
private @Meta int cutBottom = 0;
|
||||||
|
|
||||||
@Value("cut.top")
|
@Value("cut.top")
|
||||||
@Default
|
@Default
|
||||||
private int cutTop = 0;
|
private @Meta int cutTop = 0;
|
||||||
|
|
||||||
@Value("mutate.x")
|
@Value("mutate.x")
|
||||||
private double mutateX;
|
private @Meta double mutateX;
|
||||||
|
|
||||||
@Value("mutate.y")
|
@Value("mutate.y")
|
||||||
private double mutateY;
|
private @Meta double mutateY;
|
||||||
|
|
||||||
@Value("mutate.z")
|
@Value("mutate.z")
|
||||||
private double mutateZ;
|
private @Meta double mutateZ;
|
||||||
|
|
||||||
@Value("palette.top")
|
@Value("palette.top")
|
||||||
private CarverPalette top;
|
private @Meta CarverPalette top;
|
||||||
|
|
||||||
@Value("palette.bottom")
|
@Value("palette.bottom")
|
||||||
private CarverPalette bottom;
|
private @Meta CarverPalette bottom;
|
||||||
|
|
||||||
@Value("palette.outer")
|
@Value("palette.outer")
|
||||||
private CarverPalette outer;
|
private @Meta CarverPalette outer;
|
||||||
|
|
||||||
@Value("palette.inner")
|
@Value("palette.inner")
|
||||||
private CarverPalette inner;
|
private @Meta CarverPalette inner;
|
||||||
|
|
||||||
@Value("shift")
|
@Value("shift")
|
||||||
@Default
|
@Default
|
||||||
private Map<BlockType, MaterialSet> shift = new HashMap<>();
|
private @Meta Map<@Meta BlockType, @Meta MaterialSet> shift = new HashMap<>();
|
||||||
|
|
||||||
@Value("update")
|
@Value("update")
|
||||||
@Default
|
@Default
|
||||||
private MaterialSet update = new MaterialSet();
|
private @Meta MaterialSet update = new MaterialSet();
|
||||||
|
|
||||||
public String getID() {
|
public String getID() {
|
||||||
return id;
|
return id;
|
||||||
|
@ -4,16 +4,17 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.feature.distributor.distributors.NoiseDistributor;
|
import com.dfsek.terra.addons.feature.distributor.distributors.NoiseDistributor;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.structure.feature.Distributor;
|
import com.dfsek.terra.api.structure.feature.Distributor;
|
||||||
|
|
||||||
public class NoiseDistributorTemplate implements ObjectTemplate<Distributor> {
|
public class NoiseDistributorTemplate implements ObjectTemplate<Distributor> {
|
||||||
@Value("distribution")
|
@Value("distribution")
|
||||||
private NoiseSampler noise;
|
private @Meta NoiseSampler noise;
|
||||||
|
|
||||||
@Value("threshold")
|
@Value("threshold")
|
||||||
@Default
|
@Default
|
||||||
private double threshold = 0;
|
private @Meta double threshold = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Distributor get() {
|
public Distributor get() {
|
||||||
|
@ -4,13 +4,14 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.feature.distributor.distributors.PointSetDistributor;
|
import com.dfsek.terra.addons.feature.distributor.distributors.PointSetDistributor;
|
||||||
import com.dfsek.terra.addons.feature.distributor.util.Point;
|
import com.dfsek.terra.addons.feature.distributor.util.Point;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.feature.Distributor;
|
import com.dfsek.terra.api.structure.feature.Distributor;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
public class PointSetDistributorTemplate implements ObjectTemplate<Distributor> {
|
public class PointSetDistributorTemplate implements ObjectTemplate<Distributor> {
|
||||||
@Value("points")
|
@Value("points")
|
||||||
private Set<Point> points;
|
private @Meta Set<@Meta Point> points;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Distributor get() {
|
public Distributor get() {
|
||||||
|
@ -2,13 +2,14 @@ package com.dfsek.terra.addons.feature.distributor.util;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
|
|
||||||
public class PointTemplate implements ObjectTemplate<Point> {
|
public class PointTemplate implements ObjectTemplate<Point> {
|
||||||
@Value("x")
|
@Value("x")
|
||||||
private int x;
|
private @Meta int x;
|
||||||
|
|
||||||
@Value("z")
|
@Value("z")
|
||||||
private int z;
|
private @Meta int z;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Point get() {
|
public Point get() {
|
||||||
|
@ -4,6 +4,7 @@ import com.dfsek.tectonic.annotations.Final;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.structure.Structure;
|
import com.dfsek.terra.api.structure.Structure;
|
||||||
import com.dfsek.terra.api.structure.feature.Distributor;
|
import com.dfsek.terra.api.structure.feature.Distributor;
|
||||||
@ -16,16 +17,16 @@ public class FeatureTemplate implements AbstractableTemplate {
|
|||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Value("distributor")
|
@Value("distributor")
|
||||||
private Distributor distributor;
|
private @Meta Distributor distributor;
|
||||||
|
|
||||||
@Value("locator")
|
@Value("locator")
|
||||||
private Locator locator;
|
private @Meta Locator locator;
|
||||||
|
|
||||||
@Value("structures.distribution")
|
@Value("structures.distribution")
|
||||||
private NoiseSampler structureNoise;
|
private @Meta NoiseSampler structureNoise;
|
||||||
|
|
||||||
@Value("structures.structures")
|
@Value("structures.structures")
|
||||||
private ProbabilityCollection<Structure> structures;
|
private @Meta ProbabilityCollection<Structure> structures;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getID() {
|
public String getID() {
|
||||||
|
@ -6,6 +6,7 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.terra.addons.flora.flora.gen.BlockLayer;
|
import com.dfsek.terra.addons.flora.flora.gen.BlockLayer;
|
||||||
import com.dfsek.terra.addons.flora.flora.gen.TerraFlora;
|
import com.dfsek.terra.addons.flora.flora.gen.TerraFlora;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.util.collection.MaterialSet;
|
import com.dfsek.terra.api.util.collection.MaterialSet;
|
||||||
|
|
||||||
@ -18,50 +19,50 @@ public class FloraTemplate implements AbstractableTemplate {
|
|||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Value("spawnable")
|
@Value("spawnable")
|
||||||
private MaterialSet spawnable;
|
private @Meta MaterialSet spawnable;
|
||||||
|
|
||||||
@Value("spawn-blacklist")
|
@Value("spawn-blacklist")
|
||||||
@Default
|
@Default
|
||||||
private boolean spawnBlacklist = false;
|
private @Meta boolean spawnBlacklist = false;
|
||||||
|
|
||||||
|
|
||||||
@Value("replaceable")
|
@Value("replaceable")
|
||||||
@Default
|
@Default
|
||||||
private MaterialSet replaceable = MaterialSet.empty();
|
private @Meta MaterialSet replaceable = MaterialSet.empty();
|
||||||
|
|
||||||
@Value("irrigable")
|
@Value("irrigable")
|
||||||
@Default
|
@Default
|
||||||
private MaterialSet irrigable = null;
|
private @Meta MaterialSet irrigable = null;
|
||||||
|
|
||||||
@Value("rotatable")
|
@Value("rotatable")
|
||||||
@Default
|
@Default
|
||||||
private MaterialSet rotatable = MaterialSet.empty();
|
private @Meta MaterialSet rotatable = MaterialSet.empty();
|
||||||
|
|
||||||
@Value("physics")
|
@Value("physics")
|
||||||
@Default
|
@Default
|
||||||
private boolean doPhysics = false;
|
private @Meta boolean doPhysics = false;
|
||||||
|
|
||||||
@Value("ceiling")
|
@Value("ceiling")
|
||||||
@Default
|
@Default
|
||||||
private boolean ceiling = false;
|
private @Meta boolean ceiling = false;
|
||||||
|
|
||||||
@Value("search")
|
@Value("search")
|
||||||
@Default
|
@Default
|
||||||
private TerraFlora.Search search = TerraFlora.Search.UP;
|
private TerraFlora.@Meta Search search = TerraFlora.Search.UP;
|
||||||
|
|
||||||
@Value("max-placements")
|
@Value("max-placements")
|
||||||
@Default
|
@Default
|
||||||
private int maxPlacements = -1;
|
private @Meta int maxPlacements = -1;
|
||||||
|
|
||||||
@Value("irrigable-offset")
|
@Value("irrigable-offset")
|
||||||
@Default
|
@Default
|
||||||
private int irrigableOffset;
|
private @Meta int irrigableOffset;
|
||||||
|
|
||||||
@Value("layers")
|
@Value("layers")
|
||||||
private List<BlockLayer> layers;
|
private @Meta List<@Meta BlockLayer> layers;
|
||||||
|
|
||||||
@Value("layer-distribution")
|
@Value("layer-distribution")
|
||||||
private NoiseSampler noiseDistribution;
|
private @Meta NoiseSampler noiseDistribution;
|
||||||
|
|
||||||
public NoiseSampler getNoiseDistribution() {
|
public NoiseSampler getNoiseDistribution() {
|
||||||
return noiseDistribution;
|
return noiseDistribution;
|
||||||
|
@ -4,14 +4,15 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.flora.flora.gen.BlockLayer;
|
import com.dfsek.terra.addons.flora.flora.gen.BlockLayer;
|
||||||
import com.dfsek.terra.api.block.state.BlockState;
|
import com.dfsek.terra.api.block.state.BlockState;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
|
|
||||||
public class BlockLayerTemplate implements ObjectTemplate<BlockLayer> {
|
public class BlockLayerTemplate implements ObjectTemplate<BlockLayer> {
|
||||||
@Value("layers")
|
@Value("layers")
|
||||||
private int layers;
|
private @Meta int layers;
|
||||||
|
|
||||||
@Value("materials")
|
@Value("materials")
|
||||||
private ProbabilityCollection<BlockState> data;
|
private @Meta ProbabilityCollection<BlockState> data;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BlockLayer get() {
|
public BlockLayer get() {
|
||||||
|
@ -4,15 +4,16 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.feature.locator.locators.RandomLocator;
|
import com.dfsek.terra.addons.feature.locator.locators.RandomLocator;
|
||||||
import com.dfsek.terra.addons.feature.locator.locators.SurfaceLocator;
|
import com.dfsek.terra.addons.feature.locator.locators.SurfaceLocator;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.feature.Locator;
|
import com.dfsek.terra.api.structure.feature.Locator;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
|
|
||||||
public class RandomLocatorTemplate implements ObjectTemplate<Locator> {
|
public class RandomLocatorTemplate implements ObjectTemplate<Locator> {
|
||||||
@Value("height")
|
@Value("height")
|
||||||
private Range height;
|
private @Meta Range height;
|
||||||
|
|
||||||
@Value("amount")
|
@Value("amount")
|
||||||
private Range amount;
|
private @Meta Range amount;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Locator get() {
|
public Locator get() {
|
||||||
|
@ -4,6 +4,7 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
import com.dfsek.terra.addons.feature.locator.locators.SurfaceLocator;
|
import com.dfsek.terra.addons.feature.locator.locators.SurfaceLocator;
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.feature.Locator;
|
import com.dfsek.terra.api.structure.feature.Locator;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
|
|
||||||
@ -11,7 +12,7 @@ public class SurfaceLocatorTemplate implements ObjectTemplate<Locator> {
|
|||||||
private final TerraPlugin main;
|
private final TerraPlugin main;
|
||||||
|
|
||||||
@Value("range")
|
@Value("range")
|
||||||
private Range range;
|
private @Meta Range range;
|
||||||
|
|
||||||
public SurfaceLocatorTemplate(TerraPlugin main) {
|
public SurfaceLocatorTemplate(TerraPlugin main) {
|
||||||
this.main = main;
|
this.main = main;
|
||||||
|
@ -3,12 +3,13 @@ package com.dfsek.terra.addons.noise;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
import com.dfsek.terra.addons.noise.config.DimensionApplicableNoiseSampler;
|
import com.dfsek.terra.addons.noise.config.DimensionApplicableNoiseSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public class NoiseConfigPackTemplate implements ConfigTemplate {
|
public class NoiseConfigPackTemplate implements ConfigTemplate {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
private Map<String, DimensionApplicableNoiseSampler> noiseBuilderMap;
|
private @Meta Map<String, @Meta DimensionApplicableNoiseSampler> noiseBuilderMap;
|
||||||
|
|
||||||
public Map<String, DimensionApplicableNoiseSampler> getNoiseBuilderMap() {
|
public Map<String, DimensionApplicableNoiseSampler> getNoiseBuilderMap() {
|
||||||
return noiseBuilderMap;
|
return noiseBuilderMap;
|
||||||
|
@ -2,14 +2,15 @@ package com.dfsek.terra.addons.noise.config;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public class DimensionApplicableNoiseSampler implements ObjectTemplate<DimensionApplicableNoiseSampler> {
|
public class DimensionApplicableNoiseSampler implements ObjectTemplate<DimensionApplicableNoiseSampler> {
|
||||||
@Value("dimensions")
|
@Value("dimensions")
|
||||||
private int dimensions;
|
private @Meta int dimensions;
|
||||||
|
|
||||||
@Value(".")
|
@Value(".")
|
||||||
private NoiseSampler sampler;
|
private @Meta NoiseSampler sampler;
|
||||||
|
|
||||||
public int getDimensions() {
|
public int getDimensions() {
|
||||||
return dimensions;
|
return dimensions;
|
||||||
|
@ -3,23 +3,20 @@ package com.dfsek.terra.addons.noise.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.samplers.DomainWarpedSampler;
|
import com.dfsek.terra.addons.noise.samplers.DomainWarpedSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class DomainWarpTemplate extends SamplerTemplate<DomainWarpedSampler> {
|
public class DomainWarpTemplate extends SamplerTemplate<DomainWarpedSampler> {
|
||||||
@Value("warp")
|
@Value("warp")
|
||||||
private NoiseSampler warp;
|
private @Meta NoiseSampler warp;
|
||||||
|
|
||||||
@Value("function")
|
@Value("function")
|
||||||
private NoiseSampler function;
|
private @Meta NoiseSampler function;
|
||||||
|
|
||||||
@Value("salt")
|
|
||||||
@Default
|
|
||||||
private int salt = 0;
|
|
||||||
|
|
||||||
@Value("amplitude")
|
@Value("amplitude")
|
||||||
@Default
|
@Default
|
||||||
private double amplitude = 1;
|
private @Meta double amplitude = 1;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -2,6 +2,7 @@ package com.dfsek.terra.addons.noise.config.templates;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -11,7 +12,7 @@ public class FunctionTemplate implements ObjectTemplate<FunctionTemplate> {
|
|||||||
private List<String> args;
|
private List<String> args;
|
||||||
|
|
||||||
@Value("function")
|
@Value("function")
|
||||||
private String function;
|
private @Meta String function;
|
||||||
|
|
||||||
public List<String> getArgs() {
|
public List<String> getArgs() {
|
||||||
return args;
|
return args;
|
||||||
|
@ -2,6 +2,7 @@ package com.dfsek.terra.addons.noise.config.templates;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.samplers.ImageSampler;
|
import com.dfsek.terra.addons.noise.samplers.ImageSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
@ -10,13 +11,13 @@ import java.awt.image.BufferedImage;
|
|||||||
public class ImageSamplerTemplate extends SamplerTemplate<ImageSampler> {
|
public class ImageSamplerTemplate extends SamplerTemplate<ImageSampler> {
|
||||||
|
|
||||||
@Value("image")
|
@Value("image")
|
||||||
private BufferedImage image;
|
private @Meta BufferedImage image;
|
||||||
|
|
||||||
@Value("frequency")
|
@Value("frequency")
|
||||||
private double frequency;
|
private @Meta double frequency;
|
||||||
|
|
||||||
@Value("channel")
|
@Value("channel")
|
||||||
private ImageSampler.Channel channel;
|
private ImageSampler.@Meta Channel channel;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -5,6 +5,7 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.config.ValidatedConfigTemplate;
|
import com.dfsek.tectonic.config.ValidatedConfigTemplate;
|
||||||
import com.dfsek.tectonic.exception.ValidationException;
|
import com.dfsek.tectonic.exception.ValidationException;
|
||||||
import com.dfsek.terra.addons.noise.samplers.KernelSampler;
|
import com.dfsek.terra.addons.noise.samplers.KernelSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -13,18 +14,18 @@ import java.util.List;
|
|||||||
public class KernelTemplate extends SamplerTemplate<KernelSampler> implements ValidatedConfigTemplate {
|
public class KernelTemplate extends SamplerTemplate<KernelSampler> implements ValidatedConfigTemplate {
|
||||||
|
|
||||||
@Value("kernel")
|
@Value("kernel")
|
||||||
private List<List<Double>> kernel;
|
private @Meta List<@Meta List<@Meta Double>> kernel;
|
||||||
|
|
||||||
@Value("factor")
|
@Value("factor")
|
||||||
@Default
|
@Default
|
||||||
private double factor = 1;
|
private @Meta double factor = 1;
|
||||||
|
|
||||||
@Value("function")
|
@Value("function")
|
||||||
private NoiseSampler function;
|
private @Meta NoiseSampler function;
|
||||||
|
|
||||||
@Value("frequency")
|
@Value("frequency")
|
||||||
@Default
|
@Default
|
||||||
private double frequency = 1;
|
private @Meta double frequency = 1;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -5,13 +5,14 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.tectonic.config.ValidatedConfigTemplate;
|
import com.dfsek.tectonic.config.ValidatedConfigTemplate;
|
||||||
import com.dfsek.tectonic.exception.ValidationException;
|
import com.dfsek.tectonic.exception.ValidationException;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
public abstract class SamplerTemplate<T extends NoiseSampler> implements ValidatedConfigTemplate, ObjectTemplate<NoiseSampler> {
|
public abstract class SamplerTemplate<T extends NoiseSampler> implements ValidatedConfigTemplate, ObjectTemplate<NoiseSampler> {
|
||||||
@Value("dimensions")
|
@Value("dimensions")
|
||||||
@Default
|
@Default
|
||||||
private int dimensions = 2;
|
private @Meta int dimensions = 2;
|
||||||
|
|
||||||
public int getDimensions() {
|
public int getDimensions() {
|
||||||
return dimensions;
|
return dimensions;
|
||||||
|
@ -4,26 +4,27 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.CellularSampler;
|
import com.dfsek.terra.addons.noise.samplers.noise.CellularSampler;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
import com.dfsek.terra.addons.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
public class CellularNoiseTemplate extends NoiseTemplate<CellularSampler> {
|
public class CellularNoiseTemplate extends NoiseTemplate<CellularSampler> {
|
||||||
@Value("distance")
|
@Value("distance")
|
||||||
@Default
|
@Default
|
||||||
private CellularSampler.DistanceFunction cellularDistanceFunction = CellularSampler.DistanceFunction.EuclideanSq;
|
private CellularSampler.@Meta DistanceFunction cellularDistanceFunction = CellularSampler.DistanceFunction.EuclideanSq;
|
||||||
|
|
||||||
@Value("return")
|
@Value("return")
|
||||||
@Default
|
@Default
|
||||||
private CellularSampler.ReturnType cellularReturnType = CellularSampler.ReturnType.Distance;
|
private CellularSampler.@Meta ReturnType cellularReturnType = CellularSampler.ReturnType.Distance;
|
||||||
|
|
||||||
@Value("jitter")
|
@Value("jitter")
|
||||||
@Default
|
@Default
|
||||||
private double cellularJitter = 1.0D;
|
private @Meta double cellularJitter = 1.0D;
|
||||||
|
|
||||||
|
|
||||||
@Value("lookup")
|
@Value("lookup")
|
||||||
@Default
|
@Default
|
||||||
private NoiseSampler lookup = new OpenSimplex2Sampler();
|
private @Meta NoiseSampler lookup = new OpenSimplex2Sampler();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -4,13 +4,14 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.ConstantSampler;
|
import com.dfsek.terra.addons.noise.samplers.noise.ConstantSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
public class ConstantNoiseTemplate extends SamplerTemplate<ConstantSampler> {
|
public class ConstantNoiseTemplate extends SamplerTemplate<ConstantSampler> {
|
||||||
@Value("value")
|
@Value("value")
|
||||||
@Default
|
@Default
|
||||||
private double value = 0d;
|
private @Meta double value = 0d;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -15,6 +15,7 @@ import com.dfsek.terra.addons.noise.paralithic.defined.UserDefinedFunction;
|
|||||||
import com.dfsek.terra.addons.noise.paralithic.noise.NoiseFunction2;
|
import com.dfsek.terra.addons.noise.paralithic.noise.NoiseFunction2;
|
||||||
import com.dfsek.terra.addons.noise.paralithic.noise.NoiseFunction3;
|
import com.dfsek.terra.addons.noise.paralithic.noise.NoiseFunction3;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.ExpressionFunction;
|
import com.dfsek.terra.addons.noise.samplers.noise.ExpressionFunction;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@ -27,15 +28,18 @@ public class ExpressionFunctionTemplate extends SamplerTemplate<ExpressionFuncti
|
|||||||
private final Map<String, DimensionApplicableNoiseSampler> otherFunctions;
|
private final Map<String, DimensionApplicableNoiseSampler> otherFunctions;
|
||||||
@Value("variables")
|
@Value("variables")
|
||||||
@Default
|
@Default
|
||||||
private Map<String, Double> vars = new HashMap<>();
|
private @Meta Map<String, @Meta Double> vars = new HashMap<>();
|
||||||
|
|
||||||
@Value("equation")
|
@Value("equation")
|
||||||
private String equation;
|
private @Meta String equation;
|
||||||
|
|
||||||
@Value("functions")
|
@Value("functions")
|
||||||
@Default
|
@Default
|
||||||
private LinkedHashMap<String, DimensionApplicableNoiseSampler> functions = new LinkedHashMap<>();
|
private @Meta LinkedHashMap<String, @Meta DimensionApplicableNoiseSampler> functions = new LinkedHashMap<>();
|
||||||
|
|
||||||
@Value("expressions")
|
@Value("expressions")
|
||||||
@Default
|
@Default
|
||||||
private LinkedHashMap<String, FunctionTemplate> expressions = new LinkedHashMap<>();
|
private @Meta LinkedHashMap<String, @Meta FunctionTemplate> expressions = new LinkedHashMap<>();
|
||||||
|
|
||||||
public ExpressionFunctionTemplate(Map<String, DimensionApplicableNoiseSampler> otherFunctions) {
|
public ExpressionFunctionTemplate(Map<String, DimensionApplicableNoiseSampler> otherFunctions) {
|
||||||
this.otherFunctions = otherFunctions;
|
this.otherFunctions = otherFunctions;
|
||||||
|
@ -3,28 +3,29 @@ package com.dfsek.terra.addons.noise.config.templates.noise;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.GaborNoiseSampler;
|
import com.dfsek.terra.addons.noise.samplers.noise.GaborNoiseSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public class GaborNoiseTemplate extends NoiseTemplate<GaborNoiseSampler> {
|
public class GaborNoiseTemplate extends NoiseTemplate<GaborNoiseSampler> {
|
||||||
@Value("rotation")
|
@Value("rotation")
|
||||||
@Default
|
@Default
|
||||||
private double rotation = 0.25;
|
private @Meta double rotation = 0.25;
|
||||||
|
|
||||||
@Value("isotropic")
|
@Value("isotropic")
|
||||||
@Default
|
@Default
|
||||||
private boolean isotropic = true;
|
private @Meta boolean isotropic = true;
|
||||||
|
|
||||||
@Value("deviation")
|
@Value("deviation")
|
||||||
@Default
|
@Default
|
||||||
private double deviation = 1.0;
|
private @Meta double deviation = 1.0;
|
||||||
|
|
||||||
@Value("impulses")
|
@Value("impulses")
|
||||||
@Default
|
@Default
|
||||||
private double impulses = 64d;
|
private @Meta double impulses = 64d;
|
||||||
|
|
||||||
@Value("frequency_0")
|
@Value("frequency_0")
|
||||||
@Default
|
@Default
|
||||||
private double f0 = 0.625;
|
private @Meta double f0 = 0.625;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -4,15 +4,16 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.NoiseFunction;
|
import com.dfsek.terra.addons.noise.samplers.noise.NoiseFunction;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public abstract class NoiseTemplate<T extends NoiseFunction> extends SamplerTemplate<T> {
|
public abstract class NoiseTemplate<T extends NoiseFunction> extends SamplerTemplate<T> {
|
||||||
@Value("frequency")
|
@Value("frequency")
|
||||||
@Default
|
@Default
|
||||||
protected double frequency = 0.02d;
|
protected @Meta double frequency = 0.02d;
|
||||||
|
|
||||||
@Value("salt")
|
@Value("salt")
|
||||||
@Default
|
@Default
|
||||||
protected long salt = 0;
|
protected @Meta long salt = 0;
|
||||||
}
|
}
|
||||||
|
@ -4,25 +4,26 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.fractal.FractalNoiseFunction;
|
import com.dfsek.terra.addons.noise.samplers.noise.fractal.FractalNoiseFunction;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public abstract class FractalTemplate<T extends FractalNoiseFunction> extends SamplerTemplate<T> {
|
public abstract class FractalTemplate<T extends FractalNoiseFunction> extends SamplerTemplate<T> {
|
||||||
@Value("octaves")
|
@Value("octaves")
|
||||||
@Default
|
@Default
|
||||||
protected int octaves = 3;
|
protected @Meta int octaves = 3;
|
||||||
|
|
||||||
@Value("gain")
|
@Value("gain")
|
||||||
@Default
|
@Default
|
||||||
protected double fractalGain = 0.5D;
|
protected @Meta double fractalGain = 0.5D;
|
||||||
|
|
||||||
@Value("lacunarity")
|
@Value("lacunarity")
|
||||||
@Default
|
@Default
|
||||||
protected double fractalLacunarity = 2.0D;
|
protected @Meta double fractalLacunarity = 2.0D;
|
||||||
|
|
||||||
@Value("weighted-strength")
|
@Value("weighted-strength")
|
||||||
@Default
|
@Default
|
||||||
protected double weightedStrength = 0.0D;
|
protected @Meta double weightedStrength = 0.0D;
|
||||||
|
|
||||||
@Value("function")
|
@Value("function")
|
||||||
protected NoiseSampler function;
|
protected @Meta NoiseSampler function;
|
||||||
}
|
}
|
||||||
|
@ -3,13 +3,14 @@ package com.dfsek.terra.addons.noise.config.templates.noise.fractal;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.samplers.noise.fractal.PingPongSampler;
|
import com.dfsek.terra.addons.noise.samplers.noise.fractal.PingPongSampler;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class PingPongTemplate extends FractalTemplate<PingPongSampler> {
|
public class PingPongTemplate extends FractalTemplate<PingPongSampler> {
|
||||||
@Value("ping-pong")
|
@Value("ping-pong")
|
||||||
@Default
|
@Default
|
||||||
private double pingPong = 2.0D;
|
private @Meta double pingPong = 2.0D;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -2,15 +2,16 @@ package com.dfsek.terra.addons.noise.config.templates.normalizer;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.normalizer.ClampNormalizer;
|
import com.dfsek.terra.addons.noise.normalizer.ClampNormalizer;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class ClampNormalizerTemplate extends NormalizerTemplate<ClampNormalizer> {
|
public class ClampNormalizerTemplate extends NormalizerTemplate<ClampNormalizer> {
|
||||||
@Value("max")
|
@Value("max")
|
||||||
private double max;
|
private @Meta double max;
|
||||||
|
|
||||||
@Value("min")
|
@Value("min")
|
||||||
private double min;
|
private @Meta double min;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -2,15 +2,16 @@ package com.dfsek.terra.addons.noise.config.templates.normalizer;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.normalizer.LinearNormalizer;
|
import com.dfsek.terra.addons.noise.normalizer.LinearNormalizer;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class LinearNormalizerTemplate extends NormalizerTemplate<LinearNormalizer> {
|
public class LinearNormalizerTemplate extends NormalizerTemplate<LinearNormalizer> {
|
||||||
@Value("max")
|
@Value("max")
|
||||||
private double max;
|
private @Meta double max;
|
||||||
|
|
||||||
@Value("min")
|
@Value("min")
|
||||||
private double min;
|
private @Meta double min;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -3,19 +3,20 @@ package com.dfsek.terra.addons.noise.config.templates.normalizer;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.normalizer.NormalNormalizer;
|
import com.dfsek.terra.addons.noise.normalizer.NormalNormalizer;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class NormalNormalizerTemplate extends NormalizerTemplate<NormalNormalizer> {
|
public class NormalNormalizerTemplate extends NormalizerTemplate<NormalNormalizer> {
|
||||||
@Value("mean")
|
@Value("mean")
|
||||||
private double mean;
|
private @Meta double mean;
|
||||||
|
|
||||||
@Value("standard-deviation")
|
@Value("standard-deviation")
|
||||||
private double stdDev;
|
private @Meta double stdDev;
|
||||||
|
|
||||||
@Value("groups")
|
@Value("groups")
|
||||||
@Default
|
@Default
|
||||||
private int groups = 16384;
|
private @Meta int groups = 16384;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler get() {
|
public NoiseSampler get() {
|
||||||
|
@ -3,9 +3,10 @@ package com.dfsek.terra.addons.noise.config.templates.normalizer;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
import com.dfsek.terra.addons.noise.config.templates.SamplerTemplate;
|
||||||
import com.dfsek.terra.addons.noise.normalizer.Normalizer;
|
import com.dfsek.terra.addons.noise.normalizer.Normalizer;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
public abstract class NormalizerTemplate<T extends Normalizer> extends SamplerTemplate<T> {
|
public abstract class NormalizerTemplate<T extends Normalizer> extends SamplerTemplate<T> {
|
||||||
@Value("function")
|
@Value("function")
|
||||||
protected NoiseSampler function;
|
protected @Meta NoiseSampler function;
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,7 @@ import com.dfsek.tectonic.annotations.Value;
|
|||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
import com.dfsek.terra.api.block.state.BlockState;
|
import com.dfsek.terra.api.block.state.BlockState;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collection.MaterialSet;
|
import com.dfsek.terra.api.util.collection.MaterialSet;
|
||||||
|
|
||||||
@ -19,29 +20,29 @@ public class OreTemplate implements AbstractableTemplate {
|
|||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Value("material")
|
@Value("material")
|
||||||
private BlockState material;
|
private @Meta BlockState material;
|
||||||
|
|
||||||
@Value("material-overrides")
|
@Value("material-overrides")
|
||||||
@Default
|
@Default
|
||||||
private Map<BlockType, BlockState> materials = new HashMap<>();
|
private @Meta Map<@Meta BlockType, @Meta BlockState> materials = new HashMap<>();
|
||||||
|
|
||||||
@Value("replace")
|
@Value("replace")
|
||||||
private MaterialSet replaceable;
|
private @Meta MaterialSet replaceable;
|
||||||
|
|
||||||
@Value("physics")
|
@Value("physics")
|
||||||
@Default
|
@Default
|
||||||
private boolean physics = false;
|
private @Meta boolean physics = false;
|
||||||
|
|
||||||
@Value("size")
|
@Value("size")
|
||||||
private Range size;
|
private @Meta Range size;
|
||||||
|
|
||||||
@Value("deform")
|
@Value("deform")
|
||||||
@Default
|
@Default
|
||||||
private double deform = 0.75D;
|
private @Meta double deform = 0.75D;
|
||||||
|
|
||||||
@Value("deform-frequency")
|
@Value("deform-frequency")
|
||||||
@Default
|
@Default
|
||||||
private double deformFrequency = 0.1D;
|
private @Meta double deformFrequency = 0.1D;
|
||||||
|
|
||||||
public double getDeform() {
|
public double getDeform() {
|
||||||
return deform;
|
return deform;
|
||||||
|
@ -5,6 +5,7 @@ import com.dfsek.tectonic.annotations.Final;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.addons.palette.palette.PaletteLayerHolder;
|
import com.dfsek.terra.addons.palette.palette.PaletteLayerHolder;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -13,14 +14,14 @@ import java.util.List;
|
|||||||
public class PaletteTemplate implements AbstractableTemplate {
|
public class PaletteTemplate implements AbstractableTemplate {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
@Default
|
@Default
|
||||||
private NoiseSampler noise = NoiseSampler.zero();
|
private @Meta NoiseSampler noise = NoiseSampler.zero();
|
||||||
|
|
||||||
@Value("id")
|
@Value("id")
|
||||||
@Final
|
@Final
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Value("layers")
|
@Value("layers")
|
||||||
private List<PaletteLayerHolder> palette;
|
private @Meta List<@Meta PaletteLayerHolder> palette;
|
||||||
|
|
||||||
public String getID() {
|
public String getID() {
|
||||||
return id;
|
return id;
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.addons.structure;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.configured.ConfiguredStructure;
|
import com.dfsek.terra.api.structure.configured.ConfiguredStructure;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -11,7 +12,7 @@ import java.util.Set;
|
|||||||
public class BiomeStructuresTemplate implements ObjectTemplate<BiomeStructures> {
|
public class BiomeStructuresTemplate implements ObjectTemplate<BiomeStructures> {
|
||||||
@Value("structures")
|
@Value("structures")
|
||||||
@Default
|
@Default
|
||||||
private Set<ConfiguredStructure> structures = Collections.emptySet();
|
private @Meta Set<@Meta ConfiguredStructure> structures = Collections.emptySet();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeStructures get() {
|
public BiomeStructures get() {
|
||||||
|
@ -4,6 +4,7 @@ import com.dfsek.tectonic.annotations.Final;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
import com.dfsek.terra.api.config.AbstractableTemplate;
|
import com.dfsek.terra.api.config.AbstractableTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.Structure;
|
import com.dfsek.terra.api.structure.Structure;
|
||||||
import com.dfsek.terra.api.structure.StructureSpawn;
|
import com.dfsek.terra.api.structure.StructureSpawn;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
@ -16,13 +17,13 @@ public class StructureTemplate implements AbstractableTemplate, ConfigTemplate {
|
|||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Value("scripts")
|
@Value("scripts")
|
||||||
private ProbabilityCollection<Structure> structure;
|
private @Meta ProbabilityCollection<@Meta Structure> structure;
|
||||||
|
|
||||||
@Value("spawn.start")
|
@Value("spawn.start")
|
||||||
private Range y;
|
private @Meta Range y;
|
||||||
|
|
||||||
@Value("spawn")
|
@Value("spawn")
|
||||||
private StructureSpawn spawn;
|
private @Meta StructureSpawn spawn;
|
||||||
|
|
||||||
public String getID() {
|
public String getID() {
|
||||||
return id;
|
return id;
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.addons.generation.feature.config;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.structure.feature.Feature;
|
import com.dfsek.terra.api.structure.feature.Feature;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -11,7 +12,7 @@ import java.util.List;
|
|||||||
public class BiomeFeaturesTemplate implements ObjectTemplate<BiomeFeatures> {
|
public class BiomeFeaturesTemplate implements ObjectTemplate<BiomeFeatures> {
|
||||||
@Value("features")
|
@Value("features")
|
||||||
@Default
|
@Default
|
||||||
private List<Feature> features = Collections.emptyList();
|
private @Meta List<@Meta Feature> features = Collections.emptyList();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeFeatures get() {
|
public BiomeFeatures get() {
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.addons.generation.flora;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -10,7 +11,7 @@ import java.util.List;
|
|||||||
public class BiomeFloraTemplate implements ObjectTemplate<BiomeFlora> {
|
public class BiomeFloraTemplate implements ObjectTemplate<BiomeFlora> {
|
||||||
@Value("flora")
|
@Value("flora")
|
||||||
@Default
|
@Default
|
||||||
private List<FloraLayer> flora = Collections.emptyList();
|
private @Meta List<@Meta FloraLayer> flora = Collections.emptyList();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BiomeFlora get() {
|
public BiomeFlora get() {
|
||||||
|
@ -2,6 +2,7 @@ package com.dfsek.terra.addons.generation.flora;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.util.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
@ -9,16 +10,16 @@ import com.dfsek.terra.api.world.Flora;
|
|||||||
|
|
||||||
public class FloraLayerLoader implements ObjectTemplate<FloraLayer> {
|
public class FloraLayerLoader implements ObjectTemplate<FloraLayer> {
|
||||||
@Value("density")
|
@Value("density")
|
||||||
private double density;
|
private @Meta double density;
|
||||||
|
|
||||||
@Value("y")
|
@Value("y")
|
||||||
private Range y;
|
private @Meta Range y;
|
||||||
|
|
||||||
@Value("items")
|
@Value("items")
|
||||||
private ProbabilityCollection<Flora> items;
|
private @Meta ProbabilityCollection<@Meta Flora> items;
|
||||||
|
|
||||||
@Value("distribution")
|
@Value("distribution")
|
||||||
private NoiseSampler distribution;
|
private @Meta NoiseSampler distribution;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -2,11 +2,12 @@ package com.dfsek.terra.config.pack;
|
|||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|
||||||
public class ConfigPackPostTemplate implements ConfigTemplate {
|
public class ConfigPackPostTemplate implements ConfigTemplate {
|
||||||
@Value("biomes")
|
@Value("biomes")
|
||||||
private BiomeProvider providerBuilder;
|
private @Meta BiomeProvider providerBuilder;
|
||||||
|
|
||||||
public BiomeProvider getProviderBuilder() {
|
public BiomeProvider getProviderBuilder() {
|
||||||
return providerBuilder;
|
return providerBuilder;
|
||||||
|
@ -3,6 +3,7 @@ package com.dfsek.terra.config.pack;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.world.generator.ChunkGeneratorProvider;
|
import com.dfsek.terra.api.world.generator.ChunkGeneratorProvider;
|
||||||
import com.dfsek.terra.api.world.generator.GenerationStageProvider;
|
import com.dfsek.terra.api.world.generator.GenerationStageProvider;
|
||||||
|
|
||||||
@ -18,35 +19,35 @@ public class ConfigPackTemplate implements ConfigTemplate {
|
|||||||
|
|
||||||
@Value("variables")
|
@Value("variables")
|
||||||
@Default
|
@Default
|
||||||
private Map<String, Double> variables = new HashMap<>();
|
private @Meta Map<String, @Meta Double> variables = new HashMap<>();
|
||||||
|
|
||||||
@Value("beta.carving")
|
@Value("beta.carving")
|
||||||
@Default
|
@Default
|
||||||
private boolean betaCarvers = false;
|
private @Meta boolean betaCarvers = false;
|
||||||
|
|
||||||
@Value("structures.locatable")
|
@Value("structures.locatable")
|
||||||
@Default
|
@Default
|
||||||
private Map<String, String> locatable = new HashMap<>();
|
private @Meta Map<@Meta String, @Meta String> locatable = new HashMap<>();
|
||||||
|
|
||||||
@Value("blend.terrain.elevation")
|
@Value("blend.terrain.elevation")
|
||||||
@Default
|
@Default
|
||||||
private int elevationBlend = 4;
|
private @Meta int elevationBlend = 4;
|
||||||
|
|
||||||
@Value("vanilla.mobs")
|
@Value("vanilla.mobs")
|
||||||
@Default
|
@Default
|
||||||
private boolean vanillaMobs = true;
|
private @Meta boolean vanillaMobs = true;
|
||||||
|
|
||||||
@Value("vanilla.caves")
|
@Value("vanilla.caves")
|
||||||
@Default
|
@Default
|
||||||
private boolean vanillaCaves = false;
|
private @Meta boolean vanillaCaves = false;
|
||||||
|
|
||||||
@Value("vanilla.decorations")
|
@Value("vanilla.decorations")
|
||||||
@Default
|
@Default
|
||||||
private boolean vanillaDecorations = false;
|
private @Meta boolean vanillaDecorations = false;
|
||||||
|
|
||||||
@Value("vanilla.structures")
|
@Value("vanilla.structures")
|
||||||
@Default
|
@Default
|
||||||
private boolean vanillaStructures = false;
|
private @Meta boolean vanillaStructures = false;
|
||||||
|
|
||||||
@Value("author")
|
@Value("author")
|
||||||
@Default
|
@Default
|
||||||
@ -54,10 +55,10 @@ public class ConfigPackTemplate implements ConfigTemplate {
|
|||||||
|
|
||||||
@Value("disable.sapling")
|
@Value("disable.sapling")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableSaplings = false;
|
private @Meta boolean disableSaplings = false;
|
||||||
|
|
||||||
@Value("stages")
|
@Value("stages")
|
||||||
private List<GenerationStageProvider> stages;
|
private @Meta List<@Meta GenerationStageProvider> stages;
|
||||||
|
|
||||||
@Value("version")
|
@Value("version")
|
||||||
@Default
|
@Default
|
||||||
@ -65,26 +66,26 @@ public class ConfigPackTemplate implements ConfigTemplate {
|
|||||||
|
|
||||||
@Value("disable.carvers")
|
@Value("disable.carvers")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableCarvers = false;
|
private @Meta boolean disableCarvers = false;
|
||||||
|
|
||||||
@Value("disable.structures")
|
@Value("disable.structures")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableStructures = false;
|
private @Meta boolean disableStructures = false;
|
||||||
|
|
||||||
@Value("disable.ores")
|
@Value("disable.ores")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableOres = false;
|
private @Meta boolean disableOres = false;
|
||||||
|
|
||||||
@Value("disable.trees")
|
@Value("disable.trees")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableTrees = false;
|
private @Meta boolean disableTrees = false;
|
||||||
|
|
||||||
@Value("disable.flora")
|
@Value("disable.flora")
|
||||||
@Default
|
@Default
|
||||||
private boolean disableFlora = false;
|
private @Meta boolean disableFlora = false;
|
||||||
|
|
||||||
@Value("generator")
|
@Value("generator")
|
||||||
private ChunkGeneratorProvider generatorProvider;
|
private @Meta ChunkGeneratorProvider generatorProvider;
|
||||||
|
|
||||||
public ChunkGeneratorProvider getGeneratorProvider() {
|
public ChunkGeneratorProvider getGeneratorProvider() {
|
||||||
return generatorProvider;
|
return generatorProvider;
|
||||||
|
@ -3,15 +3,16 @@ package noise;
|
|||||||
import com.dfsek.tectonic.annotations.Default;
|
import com.dfsek.tectonic.annotations.Default;
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.tectonic.config.ConfigTemplate;
|
import com.dfsek.tectonic.config.ConfigTemplate;
|
||||||
|
import com.dfsek.terra.api.config.meta.Meta;
|
||||||
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collection.ProbabilityCollection;
|
||||||
|
|
||||||
public class ColorConfigTemplate implements ConfigTemplate {
|
public class ColorConfigTemplate implements ConfigTemplate {
|
||||||
@Value("colors")
|
@Value("colors")
|
||||||
private ProbabilityCollection<Integer> colors;
|
private @Meta ProbabilityCollection<@Meta Integer> colors;
|
||||||
|
|
||||||
@Value("enable")
|
@Value("enable")
|
||||||
@Default
|
@Default
|
||||||
private boolean enable = false;
|
private @Meta boolean enable = false;
|
||||||
|
|
||||||
public boolean enable() {
|
public boolean enable() {
|
||||||
return enable;
|
return enable;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user