mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-19 07:11:14 +00:00
AutoDocAlias magic
This commit is contained in:
+36
-13
@@ -76,12 +76,26 @@ tasks.create<SourceTask>("tectonicDocs") {
|
|||||||
|
|
||||||
val docs = HashMap<String, String>()
|
val docs = HashMap<String, String>()
|
||||||
|
|
||||||
sourceSets.main.get().java.forEach { file ->
|
val refactor = HashMap<String, String>()
|
||||||
val doc = StringBuilder()
|
|
||||||
val name = file.name.substring(0, file.name.length - 5)
|
|
||||||
val unit = StaticJavaParser.parse(file)
|
|
||||||
|
|
||||||
doc.append("# $name\n")
|
val sources = HashMap<String, com.github.javaparser.ast.CompilationUnit>()
|
||||||
|
|
||||||
|
sourceSets.main.get().java.forEach {
|
||||||
|
sources[it.name.substring(0, it.name.length - 5)] = StaticJavaParser.parse(it)
|
||||||
|
}
|
||||||
|
|
||||||
|
sources.forEach { (name, unit) ->
|
||||||
|
unit.getClassByName(name).ifPresent { declaration ->
|
||||||
|
if(declaration.isAnnotationPresent("AutoDocAlias")) {
|
||||||
|
refactor[name] = (declaration.getAnnotationByName("AutoDocAlias").get().childNodes[1] as StringLiteralExpr).asString()
|
||||||
|
println("Refactoring $name to ${refactor[name]}.")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sources.forEach { (name, unit) ->
|
||||||
|
val doc = StringBuilder()
|
||||||
|
doc.append("# ${generify(name, refactor)}\n")
|
||||||
|
|
||||||
unit.getClassByName(name).ifPresent { declaration ->
|
unit.getClassByName(name).ifPresent { declaration ->
|
||||||
declaration.javadoc.ifPresent {
|
declaration.javadoc.ifPresent {
|
||||||
@@ -103,7 +117,7 @@ tasks.create<SourceTask>("tectonicDocs") {
|
|||||||
doc.append("* Default value: ${fieldDeclaration.variables[0]} \n")
|
doc.append("* Default value: ${fieldDeclaration.variables[0]} \n")
|
||||||
}
|
}
|
||||||
val type = fieldDeclaration.commonType
|
val type = fieldDeclaration.commonType
|
||||||
doc.append("* Type: ${parseTypeLink(type)} \n")
|
doc.append("* Type: ${parseTypeLink(type, refactor)} \n")
|
||||||
doc.append("\n")
|
doc.append("\n")
|
||||||
|
|
||||||
fieldDeclaration.javadoc.ifPresent {
|
fieldDeclaration.javadoc.ifPresent {
|
||||||
@@ -114,7 +128,7 @@ tasks.create<SourceTask>("tectonicDocs") {
|
|||||||
}
|
}
|
||||||
val s = doc.toString()
|
val s = doc.toString()
|
||||||
if (s.isNotEmpty() && applicable) {
|
if (s.isNotEmpty() && applicable) {
|
||||||
docs[name] = s
|
docs[generify(name, refactor)] = s
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
println("Done. Generated ${docs.size} files")
|
println("Done. Generated ${docs.size} files")
|
||||||
@@ -133,17 +147,17 @@ tasks.create<SourceTask>("tectonicDocs") {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun parseTypeLink(type: Type): String {
|
fun parseTypeLink(type: Type, refactor: Map<String, String>): String {
|
||||||
val st = parseType(type)
|
val st = parseType(type, refactor)
|
||||||
|
|
||||||
if(st.contains('<')) {
|
if(st.contains('<')) {
|
||||||
val outer = type.childNodes[0]
|
val outer = generify(type.childNodes[0].toString(), refactor)
|
||||||
|
|
||||||
val builder = StringBuilder()
|
val builder = StringBuilder()
|
||||||
builder.append("[$outer](./$outer)\\<")
|
builder.append("[$outer](./$outer)\\<")
|
||||||
|
|
||||||
for(i in 1 until type.childNodes.size) {
|
for(i in 1 until type.childNodes.size) {
|
||||||
builder.append(parseTypeLink(type.childNodes[i] as Type))
|
builder.append(parseTypeLink(type.childNodes[i] as Type, refactor))
|
||||||
if(i != type.childNodes.size-1) builder.append(", ")
|
if(i != type.childNodes.size-1) builder.append(", ")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,7 +168,7 @@ fun parseTypeLink(type: Type): String {
|
|||||||
return "[$st](./$st)"
|
return "[$st](./$st)"
|
||||||
}
|
}
|
||||||
|
|
||||||
fun parseType(type: Type): String {
|
fun parseType(type: Type, refactor: Map<String, String>): String {
|
||||||
if(type is com.github.javaparser.ast.type.PrimitiveType) {
|
if(type is com.github.javaparser.ast.type.PrimitiveType) {
|
||||||
return when(type.type) {
|
return when(type.type) {
|
||||||
Primitive.BOOLEAN -> "Boolean"
|
Primitive.BOOLEAN -> "Boolean"
|
||||||
@@ -168,7 +182,16 @@ fun parseType(type: Type): String {
|
|||||||
else -> type.asString()
|
else -> type.asString()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return type.asString()
|
return generify(type.asString(), refactor)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun generify(type:String, refactor: Map<String, String>): String {
|
||||||
|
return when(type) {
|
||||||
|
"HashMap", "LinkedHashMap" -> "Map"
|
||||||
|
"ArrayList", "LinkedList", "GlueList" -> "List"
|
||||||
|
"HashSet" -> "Set"
|
||||||
|
else -> refactor.getOrDefault(type, type)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun sanitizeJavadoc(doc: String): String {
|
fun sanitizeJavadoc(doc: String): String {
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
package com.dfsek.terra.api.docs;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* For use in Terra AutoDoc, to specify
|
||||||
|
* that references to the annotated class
|
||||||
|
* should be refactored in the documentation.
|
||||||
|
*/
|
||||||
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(ElementType.TYPE)
|
||||||
|
public @interface AutoDocAlias {
|
||||||
|
String value();
|
||||||
|
}
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
package com.dfsek.terra.config.builder;
|
package com.dfsek.terra.config.builder;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.platform.world.Biome;
|
import com.dfsek.terra.api.platform.world.Biome;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollection;
|
||||||
import com.dfsek.terra.api.util.seeded.SeededBuilder;
|
import com.dfsek.terra.api.util.seeded.SeededBuilder;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
import com.dfsek.terra.config.templates.BiomeTemplate;
|
import com.dfsek.terra.config.templates.BiomeTemplate;
|
||||||
|
|
||||||
|
@AutoDocAlias("TerraBiome")
|
||||||
public interface BiomeBuilder extends SeededBuilder<TerraBiome> {
|
public interface BiomeBuilder extends SeededBuilder<TerraBiome> {
|
||||||
ProbabilityCollection<Biome> getVanillaBiomes();
|
ProbabilityCollection<Biome> getVanillaBiomes();
|
||||||
|
|
||||||
|
|||||||
+2
@@ -6,6 +6,7 @@ import com.dfsek.tectonic.exception.LoadException;
|
|||||||
import com.dfsek.tectonic.loading.ConfigLoader;
|
import com.dfsek.tectonic.loading.ConfigLoader;
|
||||||
import com.dfsek.tectonic.loading.TypeLoader;
|
import com.dfsek.tectonic.loading.TypeLoader;
|
||||||
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
import com.dfsek.tectonic.loading.object.ObjectTemplate;
|
||||||
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
import com.dfsek.terra.registry.config.NoiseRegistry;
|
import com.dfsek.terra.registry.config.NoiseRegistry;
|
||||||
|
|
||||||
@@ -14,6 +15,7 @@ import java.util.Locale;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
@AutoDocAlias("NoiseSeeded")
|
||||||
public class NoiseSamplerBuilderLoader implements TypeLoader<NoiseSeeded> {
|
public class NoiseSamplerBuilderLoader implements TypeLoader<NoiseSeeded> {
|
||||||
private final NoiseRegistry noiseRegistry;
|
private final NoiseRegistry noiseRegistry;
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -2,7 +2,7 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.DomainWarpedSampler;
|
import com.dfsek.terra.api.math.noise.samplers.DomainWarpedSampler;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
|
|
||||||
@@ -10,6 +10,7 @@ import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
|||||||
* Defines a domain-warped noise function.
|
* Defines a domain-warped noise function.
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("DomainWarpedSampler")
|
||||||
public class DomainWarpTemplate extends SamplerTemplate<DomainWarpedSampler> {
|
public class DomainWarpTemplate extends SamplerTemplate<DomainWarpedSampler> {
|
||||||
/**
|
/**
|
||||||
* Noise function used to warp input function.
|
* Noise function used to warp input function.
|
||||||
@@ -40,7 +41,7 @@ public class DomainWarpTemplate extends SamplerTemplate<DomainWarpedSampler> {
|
|||||||
private double amplitude = 1;
|
private double amplitude = 1;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public DomainWarpedSampler apply(Long seed) {
|
||||||
return new DomainWarpedSampler(function.apply(seed), warp.apply(seed), (int) (seed + salt), amplitude);
|
return new DomainWarpedSampler(function.apply(seed), warp.apply(seed), (int) (seed + salt), amplitude);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-2
@@ -1,12 +1,13 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates;
|
package com.dfsek.terra.config.loaders.config.sampler.templates;
|
||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.ImageSampler;
|
import com.dfsek.terra.api.math.noise.samplers.ImageSampler;
|
||||||
|
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("ImageSampler")
|
||||||
public class ImageSamplerTemplate extends SamplerTemplate<ImageSampler> {
|
public class ImageSamplerTemplate extends SamplerTemplate<ImageSampler> {
|
||||||
|
|
||||||
@Value("image")
|
@Value("image")
|
||||||
@@ -19,7 +20,7 @@ public class ImageSamplerTemplate extends SamplerTemplate<ImageSampler> {
|
|||||||
private ImageSampler.Channel channel;
|
private ImageSampler.Channel channel;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public ImageSampler apply(Long seed) {
|
||||||
return new ImageSampler(image, channel, frequency);
|
return new ImageSampler(image, channel, frequency);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-2
@@ -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.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.KernelSampler;
|
import com.dfsek.terra.api.math.noise.samplers.KernelSampler;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("KernelSampler")
|
||||||
public class KernelTemplate extends SamplerTemplate<KernelSampler> implements ValidatedConfigTemplate {
|
public class KernelTemplate extends SamplerTemplate<KernelSampler> implements ValidatedConfigTemplate {
|
||||||
|
|
||||||
@Value("kernel")
|
@Value("kernel")
|
||||||
@@ -28,7 +29,7 @@ public class KernelTemplate extends SamplerTemplate<KernelSampler> implements Va
|
|||||||
private double frequency = 1;
|
private double frequency = 1;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public KernelSampler apply(Long seed) {
|
||||||
double[][] k = new double[kernel.size()][kernel.get(0).size()];
|
double[][] k = new double[kernel.size()][kernel.get(0).size()];
|
||||||
|
|
||||||
for(int x = 0; x < kernel.size(); x++) {
|
for(int x = 0; x < kernel.size(); x++) {
|
||||||
|
|||||||
+5
@@ -5,10 +5,12 @@ 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.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
|
@AutoDocAlias("NoiseSeeded")
|
||||||
public abstract class SamplerTemplate<T extends NoiseSampler> implements ValidatedConfigTemplate, ObjectTemplate<NoiseSeeded>, NoiseSeeded {
|
public abstract class SamplerTemplate<T extends NoiseSampler> implements ValidatedConfigTemplate, ObjectTemplate<NoiseSeeded>, NoiseSeeded {
|
||||||
/**
|
/**
|
||||||
* Number of dimensions for this sampler.
|
* Number of dimensions for this sampler.
|
||||||
@@ -31,4 +33,7 @@ public abstract class SamplerTemplate<T extends NoiseSampler> implements Validat
|
|||||||
public NoiseSeeded get() {
|
public NoiseSeeded get() {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public abstract T apply(Long seed);
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -2,12 +2,14 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.CellularSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.CellularSampler;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
|
@AutoDocAlias("CellularSampler")
|
||||||
public class CellularNoiseTemplate extends NoiseTemplate<CellularSampler> {
|
public class CellularNoiseTemplate extends NoiseTemplate<CellularSampler> {
|
||||||
@Value("distance")
|
@Value("distance")
|
||||||
@Default
|
@Default
|
||||||
@@ -38,7 +40,7 @@ public class CellularNoiseTemplate extends NoiseTemplate<CellularSampler> {
|
|||||||
};
|
};
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public CellularSampler apply(Long seed) {
|
||||||
CellularSampler sampler = new CellularSampler((int) (long) seed + salt);
|
CellularSampler sampler = new CellularSampler((int) (long) seed + salt);
|
||||||
sampler.setNoiseLookup(lookup.apply(seed));
|
sampler.setNoiseLookup(lookup.apply(seed));
|
||||||
sampler.setFrequency(frequency);
|
sampler.setFrequency(frequency);
|
||||||
|
|||||||
+3
-2
@@ -2,18 +2,19 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.ConstantSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.ConstantSampler;
|
||||||
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
||||||
|
|
||||||
@SuppressWarnings("FieldMayBeFinal")
|
@SuppressWarnings("FieldMayBeFinal")
|
||||||
|
@AutoDocAlias("ConstantSampler")
|
||||||
public class ConstantNoiseTemplate extends SamplerTemplate<ConstantSampler> {
|
public class ConstantNoiseTemplate extends SamplerTemplate<ConstantSampler> {
|
||||||
@Value("value")
|
@Value("value")
|
||||||
@Default
|
@Default
|
||||||
private double value = 0d;
|
private double value = 0d;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public ConstantSampler apply(Long seed) {
|
||||||
return new ConstantSampler(value);
|
return new ConstantSampler(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -8,9 +8,8 @@ import com.dfsek.tectonic.annotations.Default;
|
|||||||
import com.dfsek.tectonic.annotations.Value;
|
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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.ExpressionFunction;
|
import com.dfsek.terra.api.math.noise.samplers.noise.ExpressionFunction;
|
||||||
import com.dfsek.terra.api.math.paralithic.BlankFunction;
|
|
||||||
import com.dfsek.terra.api.math.paralithic.defined.UserDefinedFunction;
|
import com.dfsek.terra.api.math.paralithic.defined.UserDefinedFunction;
|
||||||
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction2;
|
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction2;
|
||||||
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction3;
|
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction3;
|
||||||
@@ -24,6 +23,7 @@ import java.util.Map;
|
|||||||
|
|
||||||
|
|
||||||
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
||||||
|
@AutoDocAlias("ExpressionFunction")
|
||||||
public class ExpressionFunctionTemplate extends SamplerTemplate<ExpressionFunction> implements ValidatedConfigTemplate {
|
public class ExpressionFunctionTemplate extends SamplerTemplate<ExpressionFunction> implements ValidatedConfigTemplate {
|
||||||
@Value("variables")
|
@Value("variables")
|
||||||
@Default
|
@Default
|
||||||
@@ -41,7 +41,7 @@ public class ExpressionFunctionTemplate extends SamplerTemplate<ExpressionFuncti
|
|||||||
private LinkedHashMap<String, FunctionTemplate> expressions = new LinkedHashMap<>();
|
private LinkedHashMap<String, FunctionTemplate> expressions = new LinkedHashMap<>();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public ExpressionFunction apply(Long seed) {
|
||||||
try {
|
try {
|
||||||
Map<String, Function> noiseFunctionMap = generateFunctions(seed);
|
Map<String, Function> noiseFunctionMap = generateFunctions(seed);
|
||||||
return new ExpressionFunction(noiseFunctionMap, equation, vars);
|
return new ExpressionFunction(noiseFunctionMap, equation, vars);
|
||||||
|
|||||||
+3
-2
@@ -2,12 +2,13 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.GaborNoiseSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.GaborNoiseSampler;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defines a Gabor noise function.
|
* Defines a Gabor noise function.
|
||||||
*/
|
*/
|
||||||
|
@AutoDocAlias("GaborNoiseSampler")
|
||||||
public class GaborNoiseTemplate extends NoiseTemplate<GaborNoiseSampler> {
|
public class GaborNoiseTemplate extends NoiseTemplate<GaborNoiseSampler> {
|
||||||
/**
|
/**
|
||||||
* Rotation to apply to noise. Only has noticeable effects in anisotropic mode.
|
* Rotation to apply to noise. Only has noticeable effects in anisotropic mode.
|
||||||
@@ -39,7 +40,7 @@ public class GaborNoiseTemplate extends NoiseTemplate<GaborNoiseSampler> {
|
|||||||
private double f0 = 0.625;
|
private double f0 = 0.625;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public GaborNoiseSampler apply(Long seed) {
|
||||||
GaborNoiseSampler gaborNoiseSampler = new GaborNoiseSampler((int) (long) seed + salt);
|
GaborNoiseSampler gaborNoiseSampler = new GaborNoiseSampler((int) (long) seed + salt);
|
||||||
gaborNoiseSampler.setFrequency(frequency);
|
gaborNoiseSampler.setFrequency(frequency);
|
||||||
gaborNoiseSampler.setRotation(rotation);
|
gaborNoiseSampler.setRotation(rotation);
|
||||||
|
|||||||
+2
@@ -2,10 +2,12 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.NoiseFunction;
|
import com.dfsek.terra.api.math.noise.samplers.noise.NoiseFunction;
|
||||||
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("NoiseFunction")
|
||||||
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
|
||||||
|
|||||||
+3
-2
@@ -1,10 +1,11 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.noise;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.noise;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.NoiseFunction;
|
import com.dfsek.terra.api.math.noise.samplers.noise.NoiseFunction;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
@AutoDocAlias("NoiseFunction")
|
||||||
public class SimpleNoiseTemplate extends NoiseTemplate<NoiseFunction> {
|
public class SimpleNoiseTemplate extends NoiseTemplate<NoiseFunction> {
|
||||||
private final Function<Integer, NoiseFunction> samplerSupplier;
|
private final Function<Integer, NoiseFunction> samplerSupplier;
|
||||||
|
|
||||||
@@ -13,7 +14,7 @@ public class SimpleNoiseTemplate extends NoiseTemplate<NoiseFunction> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public NoiseFunction apply(Long seed) {
|
||||||
NoiseFunction sampler = samplerSupplier.apply((int) (long) seed + salt);
|
NoiseFunction sampler = samplerSupplier.apply((int) (long) seed + salt);
|
||||||
sampler.setFrequency(frequency);
|
sampler.setFrequency(frequency);
|
||||||
return sampler;
|
return sampler;
|
||||||
|
|||||||
+3
-2
@@ -1,11 +1,12 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.noise.fractal;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.noise.fractal;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.BrownianMotionSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.BrownianMotionSampler;
|
||||||
|
|
||||||
|
@AutoDocAlias("BrownianMotionSampler")
|
||||||
public class BrownianMotionTemplate extends FractalTemplate<BrownianMotionSampler> {
|
public class BrownianMotionTemplate extends FractalTemplate<BrownianMotionSampler> {
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public BrownianMotionSampler apply(Long seed) {
|
||||||
BrownianMotionSampler sampler = new BrownianMotionSampler((int) (long) seed, function.apply(seed));
|
BrownianMotionSampler sampler = new BrownianMotionSampler((int) (long) seed, function.apply(seed));
|
||||||
sampler.setGain(fractalGain);
|
sampler.setGain(fractalGain);
|
||||||
sampler.setLacunarity(fractalLacunarity);
|
sampler.setLacunarity(fractalLacunarity);
|
||||||
|
|||||||
+2
@@ -2,10 +2,12 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.FractalNoiseFunction;
|
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.FractalNoiseFunction;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
||||||
|
|
||||||
|
@AutoDocAlias("FractalNoiseFunction")
|
||||||
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
|
||||||
|
|||||||
+3
-2
@@ -2,16 +2,17 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.PingPongSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.PingPongSampler;
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("PingPongSampler")
|
||||||
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 double pingPong = 2.0D;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public PingPongSampler apply(Long seed) {
|
||||||
PingPongSampler sampler = new PingPongSampler((int) (long) seed, function.apply(seed));
|
PingPongSampler sampler = new PingPongSampler((int) (long) seed, function.apply(seed));
|
||||||
sampler.setGain(fractalGain);
|
sampler.setGain(fractalGain);
|
||||||
sampler.setLacunarity(fractalLacunarity);
|
sampler.setLacunarity(fractalLacunarity);
|
||||||
|
|||||||
+3
-2
@@ -1,11 +1,12 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.noise.fractal;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.noise.fractal;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.RidgedFractalSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.fractal.RidgedFractalSampler;
|
||||||
|
|
||||||
|
@AutoDocAlias("RidgedFractalSampler")
|
||||||
public class RidgedFractalTemplate extends FractalTemplate<RidgedFractalSampler> {
|
public class RidgedFractalTemplate extends FractalTemplate<RidgedFractalSampler> {
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public RidgedFractalSampler apply(Long seed) {
|
||||||
RidgedFractalSampler sampler = new RidgedFractalSampler((int) (long) seed, function.apply(seed));
|
RidgedFractalSampler sampler = new RidgedFractalSampler((int) (long) seed, function.apply(seed));
|
||||||
sampler.setGain(fractalGain);
|
sampler.setGain(fractalGain);
|
||||||
sampler.setLacunarity(fractalLacunarity);
|
sampler.setLacunarity(fractalLacunarity);
|
||||||
|
|||||||
+4
-4
@@ -1,12 +1,12 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.normalizer.ClampNormalizer;
|
import com.dfsek.terra.api.math.noise.normalizer.ClampNormalizer;
|
||||||
import com.dfsek.terra.api.math.noise.normalizer.LinearNormalizer;
|
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
public class ClampNormalizerTemplate extends NormalizerTemplate<LinearNormalizer> {
|
@AutoDocAlias("ClampNormalizer")
|
||||||
|
public class ClampNormalizerTemplate extends NormalizerTemplate<ClampNormalizer> {
|
||||||
@Value("max")
|
@Value("max")
|
||||||
private double max;
|
private double max;
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ public class ClampNormalizerTemplate extends NormalizerTemplate<LinearNormalizer
|
|||||||
private double min;
|
private double min;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public ClampNormalizer apply(Long seed) {
|
||||||
return new ClampNormalizer(function.apply(seed), min, max);
|
return new ClampNormalizer(function.apply(seed), min, max);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-2
@@ -1,10 +1,11 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.normalizer.LinearNormalizer;
|
import com.dfsek.terra.api.math.noise.normalizer.LinearNormalizer;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("LinearNormalizer")
|
||||||
public class LinearNormalizerTemplate extends NormalizerTemplate<LinearNormalizer> {
|
public class LinearNormalizerTemplate extends NormalizerTemplate<LinearNormalizer> {
|
||||||
@Value("max")
|
@Value("max")
|
||||||
private double max;
|
private double max;
|
||||||
@@ -13,7 +14,7 @@ public class LinearNormalizerTemplate extends NormalizerTemplate<LinearNormalize
|
|||||||
private double min;
|
private double min;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public LinearNormalizer apply(Long seed) {
|
||||||
return new LinearNormalizer(function.apply(seed), min, max);
|
return new LinearNormalizer(function.apply(seed), min, max);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-2
@@ -2,10 +2,11 @@ package com.dfsek.terra.config.loaders.config.sampler.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.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.normalizer.NormalNormalizer;
|
import com.dfsek.terra.api.math.noise.normalizer.NormalNormalizer;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("NormalNormalizer")
|
||||||
public class NormalNormalizerTemplate extends NormalizerTemplate<NormalNormalizer> {
|
public class NormalNormalizerTemplate extends NormalizerTemplate<NormalNormalizer> {
|
||||||
@Value("mean")
|
@Value("mean")
|
||||||
private double mean;
|
private double mean;
|
||||||
@@ -18,7 +19,7 @@ public class NormalNormalizerTemplate extends NormalizerTemplate<NormalNormalize
|
|||||||
private int groups = 16384;
|
private int groups = 16384;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NoiseSampler apply(Long seed) {
|
public NormalNormalizer apply(Long seed) {
|
||||||
return new NormalNormalizer(function.apply(seed), groups, mean, stdDev);
|
return new NormalNormalizer(function.apply(seed), groups, mean, stdDev);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
@@ -1,10 +1,12 @@
|
|||||||
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
package com.dfsek.terra.config.loaders.config.sampler.templates.normalizer;
|
||||||
|
|
||||||
import com.dfsek.tectonic.annotations.Value;
|
import com.dfsek.tectonic.annotations.Value;
|
||||||
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.normalizer.Normalizer;
|
import com.dfsek.terra.api.math.noise.normalizer.Normalizer;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
import com.dfsek.terra.config.loaders.config.sampler.templates.SamplerTemplate;
|
||||||
|
|
||||||
|
@AutoDocAlias("Normalizer")
|
||||||
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 NoiseSeeded function;
|
protected NoiseSeeded function;
|
||||||
|
|||||||
@@ -9,6 +9,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.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
|
import com.dfsek.terra.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.ConstantSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.ConstantSampler;
|
||||||
import com.dfsek.terra.api.math.paralithic.BlankFunction;
|
import com.dfsek.terra.api.math.paralithic.BlankFunction;
|
||||||
@@ -38,6 +39,7 @@ import java.util.Map;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
||||||
|
@AutoDocAlias("TerraBiome")
|
||||||
public class BiomeTemplate extends AbstractableTemplate implements ValidatedConfigTemplate {
|
public class BiomeTemplate extends AbstractableTemplate implements ValidatedConfigTemplate {
|
||||||
|
|
||||||
private final ConfigPack pack;
|
private final ConfigPack pack;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.dfsek.terra.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Abstractable;
|
import com.dfsek.tectonic.annotations.Abstractable;
|
||||||
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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.Range;
|
||||||
import com.dfsek.terra.api.platform.block.BlockType;
|
import com.dfsek.terra.api.platform.block.BlockType;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
@@ -12,6 +13,7 @@ import java.util.HashMap;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("UserDefinedCarver")
|
||||||
public class CarverTemplate extends AbstractableTemplate {
|
public class CarverTemplate extends AbstractableTemplate {
|
||||||
@Value("id")
|
@Value("id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.dfsek.terra.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Abstractable;
|
import com.dfsek.tectonic.annotations.Abstractable;
|
||||||
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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.world.palette.holder.PaletteLayerHolder;
|
import com.dfsek.terra.api.world.palette.holder.PaletteLayerHolder;
|
||||||
import com.dfsek.terra.world.population.items.flora.TerraFlora;
|
import com.dfsek.terra.world.population.items.flora.TerraFlora;
|
||||||
@@ -10,6 +11,7 @@ import com.dfsek.terra.world.population.items.flora.TerraFlora;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
||||||
|
@AutoDocAlias("Flora")
|
||||||
public class FloraTemplate extends AbstractableTemplate {
|
public class FloraTemplate extends AbstractableTemplate {
|
||||||
@Value("id")
|
@Value("id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|||||||
@@ -3,12 +3,14 @@ package com.dfsek.terra.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Abstractable;
|
import com.dfsek.tectonic.annotations.Abstractable;
|
||||||
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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.Range;
|
||||||
import com.dfsek.terra.api.platform.block.BlockData;
|
import com.dfsek.terra.api.platform.block.BlockData;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.world.population.items.ores.Ore;
|
import com.dfsek.terra.world.population.items.ores.Ore;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("Ore")
|
||||||
public class OreTemplate extends AbstractableTemplate {
|
public class OreTemplate extends AbstractableTemplate {
|
||||||
@Value("id")
|
@Value("id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.dfsek.terra.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Abstractable;
|
import com.dfsek.tectonic.annotations.Abstractable;
|
||||||
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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
import com.dfsek.terra.api.math.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.math.noise.samplers.noise.random.WhiteNoiseSampler;
|
import com.dfsek.terra.api.math.noise.samplers.noise.random.WhiteNoiseSampler;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
@@ -11,6 +12,7 @@ import com.dfsek.terra.api.world.palette.holder.PaletteLayerHolder;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
@SuppressWarnings({"FieldMayBeFinal", "unused"})
|
||||||
|
@AutoDocAlias("Palette")
|
||||||
public class PaletteTemplate extends AbstractableTemplate {
|
public class PaletteTemplate extends AbstractableTemplate {
|
||||||
@Value("noise")
|
@Value("noise")
|
||||||
@Abstractable
|
@Abstractable
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import com.dfsek.tectonic.annotations.Abstractable;
|
|||||||
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.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.math.GridSpawn;
|
import com.dfsek.terra.api.math.GridSpawn;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.Range;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
@@ -13,6 +14,7 @@ import com.dfsek.terra.api.util.collections.ProbabilityCollection;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("TerraStructure")
|
||||||
public class StructureTemplate extends AbstractableTemplate implements ConfigTemplate {
|
public class StructureTemplate extends AbstractableTemplate implements ConfigTemplate {
|
||||||
@Value("id")
|
@Value("id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|||||||
@@ -3,11 +3,13 @@ package com.dfsek.terra.config.templates;
|
|||||||
import com.dfsek.tectonic.annotations.Abstractable;
|
import com.dfsek.tectonic.annotations.Abstractable;
|
||||||
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.api.docs.AutoDocAlias;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollection;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollection;
|
||||||
|
|
||||||
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
@SuppressWarnings({"unused", "FieldMayBeFinal"})
|
||||||
|
@AutoDocAlias("Tree")
|
||||||
public class TreeTemplate extends AbstractableTemplate {
|
public class TreeTemplate extends AbstractableTemplate {
|
||||||
@Value("scripts")
|
@Value("scripts")
|
||||||
@Abstractable
|
@Abstractable
|
||||||
|
|||||||
Reference in New Issue
Block a user