mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-10-27 06:20:05 +00:00
more refactors
This commit is contained in:
1 parent
7495a6b4a1
commit
bb888380aa
86 files changed
+169
-104
No files matched your search
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.profiler;
|
package com.dfsek.terra.api.profiler;
|
||||||
|
|
||||||
public class ProfileFrame implements AutoCloseable {
|
public class ProfileFrame implements AutoCloseable {
|
||||||
private final Runnable action;
|
private final Runnable action;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.profiler;
|
package com.dfsek.terra.api.profiler;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
+2
-2
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.profiler;
|
package com.dfsek.terra.api.profiler;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@@ -41,7 +41,7 @@ public class Timings {
|
|||||||
return subItems.computeIfAbsent(id, s -> new Timings());
|
return subItems.computeIfAbsent(id, s -> new Timings());
|
||||||
}
|
}
|
||||||
|
|
||||||
public String toString(int indent, Timings parent, Set<Integer> branches) {
|
private String toString(int indent, Timings parent, Set<Integer> branches) {
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
|
|
||||||
builder.append((double) min() / 1000000).append("ms min / ").append(average() / 1000000).append("ms avg / ")
|
builder.append((double) min() / 1000000).append("ms min / ").append(average() / 1000000).append("ms avg / ")
|
||||||
+1
-2
@@ -1,7 +1,6 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer;
|
package com.dfsek.terra.api.structure.buffer;
|
||||||
|
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedItem;
|
|
||||||
|
|
||||||
public interface Buffer {
|
public interface Buffer {
|
||||||
Buffer addItem(BufferedItem item, Location location);
|
Buffer addItem(BufferedItem item, Location location);
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer.items;
|
package com.dfsek.terra.api.structure.buffer;
|
||||||
|
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.api.structures.structure;
|
package com.dfsek.terra.api.structure.rotation;
|
||||||
|
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.api.structures.structure;
|
package com.dfsek.terra.api.structure.rotation;
|
||||||
|
|
||||||
import com.dfsek.terra.api.vector.Vector2;
|
import com.dfsek.terra.api.vector.Vector2;
|
||||||
import com.dfsek.terra.api.block.Axis;
|
import com.dfsek.terra.api.block.Axis;
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
package com.dfsek.terra.api.util;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
public interface Range extends Iterable<Integer> {
|
||||||
|
boolean isInRange(int test);
|
||||||
|
|
||||||
|
int getMax();
|
||||||
|
|
||||||
|
ConstantRange setMax(int max);
|
||||||
|
|
||||||
|
int getMin();
|
||||||
|
|
||||||
|
ConstantRange setMin(int min);
|
||||||
|
|
||||||
|
int getRange();
|
||||||
|
|
||||||
|
ConstantRange multiply(int mult);
|
||||||
|
|
||||||
|
ConstantRange reflect(int pt);
|
||||||
|
|
||||||
|
int get(Random r);
|
||||||
|
|
||||||
|
ConstantRange intersects(ConstantRange other);
|
||||||
|
|
||||||
|
ConstantRange add(int add);
|
||||||
|
|
||||||
|
ConstantRange sub(int sub);
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
@Override
|
||||||
|
Iterator<Integer> iterator();
|
||||||
|
}
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -11,6 +11,8 @@ public interface Vector2 extends Cloneable {
|
|||||||
*/
|
*/
|
||||||
double getX();
|
double getX();
|
||||||
|
|
||||||
|
Vector2 clone();
|
||||||
|
|
||||||
Vector2 setX(double x);
|
Vector2 setX(double x);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.dfsek.terra.api.world.flora;
|
package com.dfsek.terra.api.world;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.Range;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
+21
-8
@@ -1,75 +1,88 @@
|
|||||||
package com.dfsek.terra.api.math;
|
package com.dfsek.terra.api.math.range;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
public class Range implements Iterable<Integer> {
|
public class ConstantRange implements Range {
|
||||||
private int min;
|
private int min;
|
||||||
private int max;
|
private int max;
|
||||||
|
|
||||||
public Range(int min, int max) {
|
public ConstantRange(int min, int max) {
|
||||||
if(min > max) throw new IllegalArgumentException("Minimum must not be grater than maximum!");
|
if(min > max) throw new IllegalArgumentException("Minimum must not be grater than maximum!");
|
||||||
this.max = max;
|
this.max = max;
|
||||||
this.min = min;
|
this.min = min;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isInRange(int test) {
|
public boolean isInRange(int test) {
|
||||||
return test >= min && test < max;
|
return test >= min && test < max;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getMax() {
|
public int getMax() {
|
||||||
return max;
|
return max;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range setMax(int max) {
|
public Range setMax(int max) {
|
||||||
this.max = max;
|
this.max = max;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getMin() {
|
public int getMin() {
|
||||||
return min;
|
return min;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range setMin(int min) {
|
public Range setMin(int min) {
|
||||||
this.min = min;
|
this.min = min;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getRange() {
|
public int getRange() {
|
||||||
return max - min;
|
return max - min;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range multiply(int mult) {
|
public Range multiply(int mult) {
|
||||||
min *= mult;
|
min *= mult;
|
||||||
max *= mult;
|
max *= mult;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range reflect(int pt) {
|
public Range reflect(int pt) {
|
||||||
return new Range(2 * pt - this.getMax(), 2 * pt - this.getMin());
|
return new ConstantRange(2 * pt - this.getMax(), 2 * pt - this.getMin());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int get(Random r) {
|
public int get(Random r) {
|
||||||
return r.nextInt((max - min) + 1) + min;
|
return r.nextInt((max - min) + 1) + min;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Range intersects(com.dfsek.terra.api.math.Range other) {
|
@Override
|
||||||
|
public Range intersects(Range other) {
|
||||||
try {
|
try {
|
||||||
return new Range(FastMath.max(this.getMin(), other.getMin()), FastMath.min(this.getMax(), other.getMax()));
|
return new ConstantRange(FastMath.max(this.getMin(), other.getMin()), FastMath.min(this.getMax(), other.getMax()));
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range add(int add) {
|
public Range add(int add) {
|
||||||
this.min += add;
|
this.min += add;
|
||||||
this.max += add;
|
this.max += add;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Range sub(int sub) {
|
public Range sub(int sub) {
|
||||||
this.min -= sub;
|
this.min -= sub;
|
||||||
this.max -= sub;
|
this.max -= sub;
|
||||||
@@ -88,8 +101,8 @@ public class Range implements Iterable<Integer> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object obj) {
|
public boolean equals(Object obj) {
|
||||||
if(!(obj instanceof com.dfsek.terra.api.math.Range)) return false;
|
if(!(obj instanceof ConstantRange)) return false;
|
||||||
Range other = (com.dfsek.terra.api.math.Range) obj;
|
Range other = (Range) obj;
|
||||||
return other.getMin() == this.getMin() && other.getMax() == this.getMax();
|
return other.getMin() == this.getMin() && other.getMax() == this.getMax();
|
||||||
}
|
}
|
||||||
|
|
||||||
+3
-3
@@ -28,11 +28,11 @@ import com.dfsek.terra.api.structures.script.builders.UnaryBooleanFunctionBuilde
|
|||||||
import com.dfsek.terra.api.structures.script.builders.UnaryNumberFunctionBuilder;
|
import com.dfsek.terra.api.structures.script.builders.UnaryNumberFunctionBuilder;
|
||||||
import com.dfsek.terra.api.structures.script.builders.UnaryStringFunctionBuilder;
|
import com.dfsek.terra.api.structures.script.builders.UnaryStringFunctionBuilder;
|
||||||
import com.dfsek.terra.api.structures.script.builders.ZeroArgFunctionBuilder;
|
import com.dfsek.terra.api.structures.script.builders.ZeroArgFunctionBuilder;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.Buffer;
|
import com.dfsek.terra.api.structure.buffer.Buffer;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.DirectBuffer;
|
import com.dfsek.terra.api.structures.structure.buffer.DirectBuffer;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
|
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.google.common.cache.Cache;
|
import com.google.common.cache.Cache;
|
||||||
import com.google.common.cache.CacheBuilder;
|
import com.google.common.cache.CacheBuilder;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
package com.dfsek.terra.api.structures.script;
|
package com.dfsek.terra.api.structures.script;
|
||||||
|
|
||||||
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
|
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.Buffer;
|
import com.dfsek.terra.api.structure.buffer.Buffer;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedBlock;
|
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedBlock;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ import com.dfsek.terra.api.structures.parser.lang.constants.ConstantExpression;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedEntity;
|
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedEntity;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedLootApplication;
|
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedLootApplication;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ import com.dfsek.terra.api.structures.parser.lang.constants.ConstantExpression;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedPulledBlock;
|
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedPulledBlock;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ import com.dfsek.terra.api.structures.parser.lang.Returnable;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedStateManipulator;
|
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedStateManipulator;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+2
-2
@@ -12,8 +12,8 @@ import com.dfsek.terra.api.structures.parser.lang.functions.Function;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.structures.structure.RotationUtil;
|
import com.dfsek.terra.api.structure.rotation.RotationUtil;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.IntermediateBuffer;
|
import com.dfsek.terra.api.structures.structure.buffer.IntermediateBuffer;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer;
|
package com.dfsek.terra.api.structures.structure.buffer;
|
||||||
|
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedItem;
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.util.GlueList;
|
import com.dfsek.terra.api.util.GlueList;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
+2
-1
@@ -1,7 +1,8 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer;
|
package com.dfsek.terra.api.structures.structure.buffer;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.structure.buffer.Buffer;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedItem;
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|||||||
+2
-1
@@ -1,8 +1,9 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer;
|
package com.dfsek.terra.api.structures.structure.buffer;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.structure.buffer.Buffer;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.vector.Vector3;
|
import com.dfsek.terra.api.vector.Vector3;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedItem;
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
|
|
||||||
public class IntermediateBuffer implements Buffer {
|
public class IntermediateBuffer implements Buffer {
|
||||||
private final Buffer original;
|
private final Buffer original;
|
||||||
|
|||||||
+2
-1
@@ -1,8 +1,9 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer;
|
package com.dfsek.terra.api.structures.structure.buffer;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.structure.buffer.Buffer;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedItem;
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
|
|||||||
+1
@@ -1,6 +1,7 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer.items;
|
package com.dfsek.terra.api.structures.structure.buffer.items;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
|
|||||||
+1
@@ -2,6 +2,7 @@ package com.dfsek.terra.api.structures.structure.buffer.items;
|
|||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.event.events.world.generation.EntitySpawnEvent;
|
import com.dfsek.terra.api.event.events.world.generation.EntitySpawnEvent;
|
||||||
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.entity.Entity;
|
import com.dfsek.terra.api.entity.Entity;
|
||||||
import com.dfsek.terra.api.entity.EntityType;
|
import com.dfsek.terra.api.entity.EntityType;
|
||||||
|
|||||||
+1
@@ -2,6 +2,7 @@ package com.dfsek.terra.api.structures.structure.buffer.items;
|
|||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.event.events.world.generation.LootPopulateEvent;
|
import com.dfsek.terra.api.event.events.world.generation.LootPopulateEvent;
|
||||||
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.state.BlockState;
|
import com.dfsek.terra.api.block.state.BlockState;
|
||||||
|
|||||||
+1
@@ -1,5 +1,6 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer.items;
|
package com.dfsek.terra.api.structures.structure.buffer.items;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
|
|||||||
+1
@@ -1,6 +1,7 @@
|
|||||||
package com.dfsek.terra.api.structures.structure.buffer.items;
|
package com.dfsek.terra.api.structures.structure.buffer.items;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
|
import com.dfsek.terra.api.structure.buffer.BufferedItem;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.state.BlockState;
|
import com.dfsek.terra.api.block.state.BlockState;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ import com.dfsek.terra.api.TerraPlugin;
|
|||||||
import com.dfsek.terra.api.util.MathUtil;
|
import com.dfsek.terra.api.util.MathUtil;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.vector.Vector3;
|
import com.dfsek.terra.api.vector.Vector3;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.util.FastRandom;
|
import com.dfsek.terra.api.util.FastRandom;
|
||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
|
|||||||
@@ -5,10 +5,11 @@ import com.dfsek.paralithic.eval.parser.Parser;
|
|||||||
import com.dfsek.paralithic.eval.parser.Scope;
|
import com.dfsek.paralithic.eval.parser.Scope;
|
||||||
import com.dfsek.paralithic.eval.tokenizer.ParseException;
|
import com.dfsek.paralithic.eval.tokenizer.ParseException;
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
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;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.vector.Vector3;
|
import com.dfsek.terra.api.vector.Vector3;
|
||||||
import com.dfsek.terra.vector.Vector3Impl;
|
import com.dfsek.terra.vector.Vector3Impl;
|
||||||
import com.dfsek.terra.api.world.World;
|
import com.dfsek.terra.api.world.World;
|
||||||
@@ -43,7 +44,7 @@ public class UserDefinedCarver extends Carver {
|
|||||||
private final Map<Long, CarverCache> cacheMap = new ConcurrentHashMap<>();
|
private final Map<Long, CarverCache> cacheMap = new ConcurrentHashMap<>();
|
||||||
private final TerraPlugin main;
|
private final TerraPlugin main;
|
||||||
private double step = 2;
|
private double step = 2;
|
||||||
private Range recalc = new Range(8, 10);
|
private Range recalc = new ConstantRange(8, 10);
|
||||||
private double recalcMagnitude = 3;
|
private double recalcMagnitude = 3;
|
||||||
|
|
||||||
public UserDefinedCarver(Range height, Range length, double[] start, double[] mutate, List<String> radii, Scope parent, long hash, int topCut, int bottomCut, CarverTemplate config, TerraPlugin main, Map<String, NoiseSeeded> functions, Map<String, FunctionTemplate> definedFunctions) throws ParseException {
|
public UserDefinedCarver(Range height, Range length, double[] start, double[] mutate, List<String> radii, Scope parent, long hash, int topCut, int bottomCut, CarverTemplate config, TerraPlugin main, Map<String, NoiseSeeded> functions, Map<String, FunctionTemplate> definedFunctions) throws ParseException {
|
||||||
|
|||||||
+1
-1
@@ -13,7 +13,7 @@ import com.dfsek.terra.api.entity.Player;
|
|||||||
import com.dfsek.terra.api.structures.parser.lang.constants.NumericConstant;
|
import com.dfsek.terra.api.structures.parser.lang.constants.NumericConstant;
|
||||||
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
|
||||||
import com.dfsek.terra.api.structures.script.functions.CheckFunction;
|
import com.dfsek.terra.api.structures.script.functions.CheckFunction;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
|
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
|
||||||
import com.dfsek.terra.api.structures.tokenizer.Position;
|
import com.dfsek.terra.api.structures.tokenizer.Position;
|
||||||
import com.dfsek.terra.api.util.FastRandom;
|
import com.dfsek.terra.api.util.FastRandom;
|
||||||
|
|||||||
+1
-1
@@ -15,7 +15,7 @@ import com.dfsek.terra.api.injection.annotations.Inject;
|
|||||||
import com.dfsek.terra.api.entity.CommandSender;
|
import com.dfsek.terra.api.entity.CommandSender;
|
||||||
import com.dfsek.terra.api.entity.Player;
|
import com.dfsek.terra.api.entity.Player;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.util.FastRandom;
|
import com.dfsek.terra.api.util.FastRandom;
|
||||||
import com.dfsek.terra.commands.structure.argument.ScriptArgumentParser;
|
import com.dfsek.terra.commands.structure.argument.ScriptArgumentParser;
|
||||||
import com.dfsek.terra.commands.structure.completer.RotationCompleter;
|
import com.dfsek.terra.commands.structure.completer.RotationCompleter;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import com.dfsek.terra.api.LoaderRegistrar;
|
|||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.addon.TerraAddon;
|
import com.dfsek.terra.api.addon.TerraAddon;
|
||||||
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.ConstantRange;
|
||||||
import com.dfsek.terra.api.noise.samplers.ImageSampler;
|
import com.dfsek.terra.api.noise.samplers.ImageSampler;
|
||||||
import com.dfsek.terra.api.noise.samplers.noise.CellularSampler;
|
import com.dfsek.terra.api.noise.samplers.noise.CellularSampler;
|
||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
@@ -70,7 +70,7 @@ public class GenericLoaders implements LoaderRegistrar {
|
|||||||
@Override
|
@Override
|
||||||
public void register(TypeRegistry registry) {
|
public void register(TypeRegistry registry) {
|
||||||
registry.registerLoader(ProbabilityCollectionImpl.class, new ProbabilityCollectionLoader())
|
registry.registerLoader(ProbabilityCollectionImpl.class, new ProbabilityCollectionLoader())
|
||||||
.registerLoader(Range.class, new RangeLoader())
|
.registerLoader(ConstantRange.class, new RangeLoader())
|
||||||
.registerLoader(GridSpawn.class, new GridSpawnLoader())
|
.registerLoader(GridSpawn.class, new GridSpawnLoader())
|
||||||
.registerLoader(PaletteHolder.class, new PaletteHolderLoader())
|
.registerLoader(PaletteHolder.class, new PaletteHolderLoader())
|
||||||
.registerLoader(PaletteLayerHolder.class, new PaletteLayerLoader())
|
.registerLoader(PaletteLayerHolder.class, new PaletteLayerLoader())
|
||||||
|
|||||||
+1
-1
@@ -2,7 +2,7 @@ package com.dfsek.terra.config.factories;
|
|||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.api.world.palette.NoisePalette;
|
import com.dfsek.terra.api.world.palette.NoisePalette;
|
||||||
import com.dfsek.terra.api.world.palette.Palette;
|
import com.dfsek.terra.api.world.palette.Palette;
|
||||||
import com.dfsek.terra.api.world.palette.holder.PaletteLayerHolder;
|
import com.dfsek.terra.api.world.palette.holder.PaletteLayerHolder;
|
||||||
|
|||||||
@@ -3,7 +3,8 @@ package com.dfsek.terra.config.loaders;
|
|||||||
import com.dfsek.tectonic.exception.LoadException;
|
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.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -13,6 +14,6 @@ public class RangeLoader implements TypeLoader<Range> {
|
|||||||
@Override
|
@Override
|
||||||
public Range load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
public Range load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
||||||
Map<String, Integer> map = (Map<String, Integer>) o;
|
Map<String, Integer> map = (Map<String, Integer>) o;
|
||||||
return new Range(map.get("min"), map.get("max"));
|
return new ConstantRange(map.get("min"), map.get("max"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,7 +4,7 @@ import com.dfsek.terra.api.block.BlockData;
|
|||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
import com.dfsek.terra.api.world.biome.TerraBiome;
|
import com.dfsek.terra.api.world.biome.TerraBiome;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|||||||
+3
-3
@@ -4,11 +4,11 @@ import com.dfsek.tectonic.exception.ConfigException;
|
|||||||
import com.dfsek.tectonic.exception.LoadException;
|
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.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
import com.dfsek.terra.api.util.seeded.NoiseSeeded;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.config.loaders.Types;
|
import com.dfsek.terra.config.loaders.Types;
|
||||||
import com.dfsek.terra.world.population.items.flora.FloraLayer;
|
import com.dfsek.terra.world.population.items.flora.FloraLayer;
|
||||||
|
|
||||||
@@ -21,7 +21,7 @@ public class FloraLayerLoader implements TypeLoader<FloraLayer> {
|
|||||||
public FloraLayer load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
public FloraLayer load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
||||||
Map<String, Object> map = (Map<String, Object>) o;
|
Map<String, Object> map = (Map<String, Object>) o;
|
||||||
double density = ((Number) map.get("density")).doubleValue();
|
double density = ((Number) map.get("density")).doubleValue();
|
||||||
Range range = configLoader.loadClass(Range.class, map.get("y"));
|
ConstantRange range = configLoader.loadClass(ConstantRange.class, map.get("y"));
|
||||||
if(range == null) throw new LoadException("Flora range unspecified");
|
if(range == null) throw new LoadException("Flora range unspecified");
|
||||||
ProbabilityCollectionImpl<Flora> items = (ProbabilityCollectionImpl<Flora>) configLoader.loadType(Types.FLORA_PROBABILITY_COLLECTION_TYPE, map.get("items"));
|
ProbabilityCollectionImpl<Flora> items = (ProbabilityCollectionImpl<Flora>) configLoader.loadType(Types.FLORA_PROBABILITY_COLLECTION_TYPE, map.get("items"));
|
||||||
|
|
||||||
|
|||||||
+4
-3
@@ -2,7 +2,8 @@ package com.dfsek.terra.config.loaders.config;
|
|||||||
|
|
||||||
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.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.world.population.items.ores.OreConfig;
|
import com.dfsek.terra.world.population.items.ores.OreConfig;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
@@ -13,8 +14,8 @@ public class OreConfigLoader implements TypeLoader<OreConfig> {
|
|||||||
@Override
|
@Override
|
||||||
public OreConfig load(Type type, Object o, ConfigLoader configLoader) {
|
public OreConfig load(Type type, Object o, ConfigLoader configLoader) {
|
||||||
Map<String, Integer> map = (Map<String, Integer>) o;
|
Map<String, Integer> map = (Map<String, Integer>) o;
|
||||||
Range amount = new Range(map.get("min"), map.get("max"));
|
Range amount = new ConstantRange(map.get("min"), map.get("max"));
|
||||||
Range height = new Range(map.get("min-height"), map.get("max-height"));
|
Range height = new ConstantRange(map.get("min-height"), map.get("max-height"));
|
||||||
return new OreConfig(amount, height);
|
return new OreConfig(amount, height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+2
-2
@@ -3,7 +3,7 @@ package com.dfsek.terra.config.loaders.config;
|
|||||||
import com.dfsek.tectonic.exception.LoadException;
|
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.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
import com.dfsek.terra.api.noise.samplers.noise.random.WhiteNoiseSampler;
|
||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
@@ -20,7 +20,7 @@ public class TreeLayerLoader implements TypeLoader<TreeLayer> {
|
|||||||
public TreeLayer load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
public TreeLayer load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
||||||
Map<String, Object> map = (Map<String, Object>) o;
|
Map<String, Object> map = (Map<String, Object>) o;
|
||||||
double density = ((Number) map.get("density")).doubleValue();
|
double density = ((Number) map.get("density")).doubleValue();
|
||||||
Range range = configLoader.loadClass(Range.class, map.get("y"));
|
ConstantRange range = configLoader.loadClass(ConstantRange.class, map.get("y"));
|
||||||
if(range == null) throw new LoadException("Tree range unspecified");
|
if(range == null) throw new LoadException("Tree range unspecified");
|
||||||
ProbabilityCollectionImpl<Tree> items = (ProbabilityCollectionImpl<Tree>) configLoader.loadType(Types.TREE_PROBABILITY_COLLECTION_TYPE, map.get("items"));
|
ProbabilityCollectionImpl<Tree> items = (ProbabilityCollectionImpl<Tree>) configLoader.loadType(Types.TREE_PROBABILITY_COLLECTION_TYPE, map.get("items"));
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -3,8 +3,9 @@ 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.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.carving.CarverPalette;
|
import com.dfsek.terra.carving.CarverPalette;
|
||||||
|
|
||||||
@@ -29,7 +30,7 @@ public class CarverTemplate extends AbstractableTemplate {
|
|||||||
@Value("recalculate-direction")
|
@Value("recalculate-direction")
|
||||||
@Abstractable
|
@Abstractable
|
||||||
@Default
|
@Default
|
||||||
private Range recalc = new Range(8, 10);
|
private Range recalc = new ConstantRange(8, 10);
|
||||||
|
|
||||||
@Value("length")
|
@Value("length")
|
||||||
@Abstractable
|
@Abstractable
|
||||||
|
|||||||
+1
-1
@@ -3,9 +3,9 @@ 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.math.Range;
|
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
import com.dfsek.terra.api.block.BlockType;
|
import com.dfsek.terra.api.block.BlockType;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
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;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -5,9 +5,9 @@ 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.math.GridSpawn;
|
import com.dfsek.terra.api.math.GridSpawn;
|
||||||
import com.dfsek.terra.api.math.Range;
|
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.util.GlueList;
|
import com.dfsek.terra.api.util.GlueList;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.dfsek.terra.profiler;
|
package com.dfsek.terra.profiler;
|
||||||
|
|
||||||
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
|
import com.dfsek.terra.api.profiler.Timings;
|
||||||
import com.dfsek.terra.api.util.mutable.MutableInteger;
|
import com.dfsek.terra.api.util.mutable.MutableInteger;
|
||||||
import com.dfsek.terra.profiler.exception.MalformedStackException;
|
import com.dfsek.terra.profiler.exception.MalformedStackException;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ import com.dfsek.tectonic.config.ConfigTemplate;
|
|||||||
import com.dfsek.tectonic.exception.LoadException;
|
import com.dfsek.tectonic.exception.LoadException;
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.api.world.palette.Palette;
|
import com.dfsek.terra.api.world.palette.Palette;
|
||||||
import com.dfsek.terra.carving.UserDefinedCarver;
|
import com.dfsek.terra.carving.UserDefinedCarver;
|
||||||
import com.dfsek.terra.config.builder.BiomeBuilder;
|
import com.dfsek.terra.config.builder.BiomeBuilder;
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@ package com.dfsek.terra.registry.config;
|
|||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.registry.OpenRegistry;
|
import com.dfsek.terra.registry.OpenRegistry;
|
||||||
import com.dfsek.terra.world.population.items.flora.ConstantFlora;
|
import com.dfsek.terra.world.population.items.flora.ConstantFlora;
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.dfsek.terra.world.carving;
|
package com.dfsek.terra.world.carving;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.world.ChunkAccess;
|
import com.dfsek.terra.api.world.ChunkAccess;
|
||||||
import com.dfsek.terra.api.world.World;
|
import com.dfsek.terra.api.world.World;
|
||||||
import com.dfsek.terra.world.Carver;
|
import com.dfsek.terra.world.Carver;
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
package com.dfsek.terra.world.generation.generators;
|
package com.dfsek.terra.world.generation.generators;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
import com.dfsek.terra.api.world.BiomeGrid;
|
import com.dfsek.terra.api.world.BiomeGrid;
|
||||||
import com.dfsek.terra.api.world.World;
|
import com.dfsek.terra.api.world.World;
|
||||||
@@ -15,7 +15,7 @@ import com.dfsek.terra.api.world.generation.TerraChunkGenerator;
|
|||||||
import com.dfsek.terra.api.world.palette.Palette;
|
import com.dfsek.terra.api.world.palette.Palette;
|
||||||
import com.dfsek.terra.config.pack.ConfigPack;
|
import com.dfsek.terra.config.pack.ConfigPack;
|
||||||
import com.dfsek.terra.config.templates.BiomeTemplate;
|
import com.dfsek.terra.config.templates.BiomeTemplate;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.Carver;
|
import com.dfsek.terra.world.Carver;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import com.dfsek.terra.world.carving.NoiseCarver;
|
import com.dfsek.terra.world.carving.NoiseCarver;
|
||||||
@@ -50,7 +50,7 @@ public class DefaultChunkGenerator2D implements TerraChunkGenerator {
|
|||||||
blockPopulators.add(new OrePopulator(main));
|
blockPopulators.add(new OrePopulator(main));
|
||||||
blockPopulators.add(new TreePopulator(main));
|
blockPopulators.add(new TreePopulator(main));
|
||||||
blockPopulators.add(new TreePopulator(main));
|
blockPopulators.add(new TreePopulator(main));
|
||||||
carver = new NoiseCarver(new Range(0, 255), main.getWorldHandle().createBlockData("minecraft:air"), main);
|
carver = new NoiseCarver(new ConstantRange(0, 255), main.getWorldHandle().createBlockData("minecraft:air"), main);
|
||||||
this.cache = cache;
|
this.cache = cache;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
package com.dfsek.terra.world.generation.generators;
|
package com.dfsek.terra.world.generation.generators;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.vector.Vector3;
|
import com.dfsek.terra.api.vector.Vector3;
|
||||||
import com.dfsek.terra.vector.Vector3Impl;
|
import com.dfsek.terra.vector.Vector3Impl;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
@@ -24,7 +24,7 @@ import com.dfsek.terra.api.world.palette.Palette;
|
|||||||
import com.dfsek.terra.api.world.palette.SinglePalette;
|
import com.dfsek.terra.api.world.palette.SinglePalette;
|
||||||
import com.dfsek.terra.config.pack.ConfigPack;
|
import com.dfsek.terra.config.pack.ConfigPack;
|
||||||
import com.dfsek.terra.config.templates.BiomeTemplate;
|
import com.dfsek.terra.config.templates.BiomeTemplate;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.Carver;
|
import com.dfsek.terra.world.Carver;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import com.dfsek.terra.world.carving.NoiseCarver;
|
import com.dfsek.terra.world.carving.NoiseCarver;
|
||||||
@@ -61,7 +61,7 @@ public class DefaultChunkGenerator3D implements TerraChunkGenerator {
|
|||||||
blockPopulators.add(new TreePopulator(main));
|
blockPopulators.add(new TreePopulator(main));
|
||||||
blockPopulators.add(new FloraPopulator(main));
|
blockPopulators.add(new FloraPopulator(main));
|
||||||
|
|
||||||
carver = new NoiseCarver(new Range(0, 255), main.getWorldHandle().createBlockData("minecraft:air"), main);
|
carver = new NoiseCarver(new ConstantRange(0, 255), main.getWorldHandle().createBlockData("minecraft:air"), main);
|
||||||
water = main.getWorldHandle().createBlockData("minecraft:water").getBlockType();
|
water = main.getWorldHandle().createBlockData("minecraft:water").getBlockType();
|
||||||
blank = new SinglePalette(main.getWorldHandle().createBlockData("minecraft:air"));
|
blank = new SinglePalette(main.getWorldHandle().createBlockData("minecraft:air"));
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -14,7 +14,7 @@ import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
|||||||
import com.dfsek.terra.carving.UserDefinedCarver;
|
import com.dfsek.terra.carving.UserDefinedCarver;
|
||||||
import com.dfsek.terra.config.pack.WorldConfig;
|
import com.dfsek.terra.config.pack.WorldConfig;
|
||||||
import com.dfsek.terra.config.templates.CarverTemplate;
|
import com.dfsek.terra.config.templates.CarverTemplate;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ import com.dfsek.terra.api.util.world.PopulationUtil;
|
|||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import com.dfsek.terra.world.population.items.flora.FloraLayer;
|
import com.dfsek.terra.world.population.items.flora.FloraLayer;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@ import com.dfsek.terra.api.world.biome.TerraBiome;
|
|||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
||||||
import com.dfsek.terra.config.templates.BiomeTemplate;
|
import com.dfsek.terra.config.templates.BiomeTemplate;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -5,14 +5,14 @@ import com.dfsek.terra.api.util.MathUtil;
|
|||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.world.World;
|
import com.dfsek.terra.api.world.World;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.util.FastRandom;
|
import com.dfsek.terra.api.util.FastRandom;
|
||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
import com.dfsek.terra.api.world.generation.Chunkified;
|
import com.dfsek.terra.api.world.generation.Chunkified;
|
||||||
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
||||||
import com.dfsek.terra.config.pack.WorldConfig;
|
import com.dfsek.terra.config.pack.WorldConfig;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import com.dfsek.terra.world.population.items.TerraStructure;
|
import com.dfsek.terra.world.population.items.TerraStructure;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.util.world.PopulationUtil;
|
|||||||
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
import com.dfsek.terra.api.world.biome.UserDefinedBiome;
|
||||||
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||||
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.world.TerraWorld;
|
import com.dfsek.terra.world.TerraWorld;
|
||||||
import com.dfsek.terra.world.population.items.tree.TreeLayer;
|
import com.dfsek.terra.world.population.items.tree.TreeLayer;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|||||||
+4
-3
@@ -1,18 +1,19 @@
|
|||||||
package com.dfsek.terra.world.population.items;
|
package com.dfsek.terra.world.population.items;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
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.vector.Vector2;
|
import com.dfsek.terra.api.vector.Vector2;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
|
|
||||||
public abstract class PlaceableLayer<T> {
|
public abstract class PlaceableLayer<T> {
|
||||||
protected final double density;
|
protected final double density;
|
||||||
protected final Range level;
|
protected final ConstantRange level;
|
||||||
protected final ProbabilityCollectionImpl<T> layer;
|
protected final ProbabilityCollectionImpl<T> layer;
|
||||||
protected final NoiseSampler noise;
|
protected final NoiseSampler noise;
|
||||||
|
|
||||||
public PlaceableLayer(double density, Range level, ProbabilityCollectionImpl<T> layer, NoiseSampler noise) {
|
public PlaceableLayer(double density, ConstantRange level, ProbabilityCollectionImpl<T> layer, NoiseSampler noise) {
|
||||||
this.density = density;
|
this.density = density;
|
||||||
this.level = level;
|
this.level = level;
|
||||||
this.layer = layer;
|
this.layer = layer;
|
||||||
|
|||||||
+1
-1
@@ -1,8 +1,8 @@
|
|||||||
package com.dfsek.terra.world.population.items;
|
package com.dfsek.terra.world.population.items;
|
||||||
|
|
||||||
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.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
import com.dfsek.terra.config.templates.StructureTemplate;
|
import com.dfsek.terra.config.templates.StructureTemplate;
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,13 +1,13 @@
|
|||||||
package com.dfsek.terra.world.population.items.flora;
|
package com.dfsek.terra.world.population.items.flora;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
import com.dfsek.terra.api.block.BlockFace;
|
import com.dfsek.terra.api.block.BlockFace;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.util.GlueList;
|
import com.dfsek.terra.api.util.GlueList;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
package com.dfsek.terra.world.population.items.flora;
|
package com.dfsek.terra.world.population.items.flora;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.block.BlockFace;
|
|||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.util.GlueList;
|
import com.dfsek.terra.api.util.GlueList;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,16 +1,16 @@
|
|||||||
package com.dfsek.terra.world.population.items.flora;
|
package com.dfsek.terra.world.population.items.flora;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.vector.Vector2;
|
import com.dfsek.terra.api.vector.Vector2;
|
||||||
import com.dfsek.terra.api.world.Chunk;
|
import com.dfsek.terra.api.world.Chunk;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.world.population.items.PlaceableLayer;
|
import com.dfsek.terra.world.population.items.PlaceableLayer;
|
||||||
|
|
||||||
public class FloraLayer extends PlaceableLayer<Flora> {
|
public class FloraLayer extends PlaceableLayer<Flora> {
|
||||||
|
|
||||||
public FloraLayer(double density, Range level, ProbabilityCollectionImpl<Flora> layer, NoiseSampler noise) {
|
public FloraLayer(double density, ConstantRange level, ProbabilityCollectionImpl<Flora> layer, NoiseSampler noise) {
|
||||||
super(density, level, layer, noise);
|
super(density, level, layer, noise);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
package com.dfsek.terra.world.population.items.flora;
|
package com.dfsek.terra.world.population.items.flora;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
@@ -14,7 +14,7 @@ import com.dfsek.terra.api.world.Chunk;
|
|||||||
import com.dfsek.terra.api.util.FastRandom;
|
import com.dfsek.terra.api.util.FastRandom;
|
||||||
import com.dfsek.terra.api.util.GlueList;
|
import com.dfsek.terra.api.util.GlueList;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.world.flora.Flora;
|
import com.dfsek.terra.api.world.Flora;
|
||||||
import com.dfsek.terra.api.world.palette.Palette;
|
import com.dfsek.terra.api.world.palette.Palette;
|
||||||
import net.jafama.FastMath;
|
import net.jafama.FastMath;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,8 +1,8 @@
|
|||||||
package com.dfsek.terra.world.population.items.ores;
|
package com.dfsek.terra.world.population.items.ores;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
|
||||||
import com.dfsek.terra.api.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
import com.dfsek.terra.api.noise.samplers.noise.simplex.OpenSimplex2Sampler;
|
||||||
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.api.vector.Vector3;
|
import com.dfsek.terra.api.vector.Vector3;
|
||||||
import com.dfsek.terra.vector.Vector3Impl;
|
import com.dfsek.terra.vector.Vector3Impl;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
package com.dfsek.terra.world.population.items.ores;
|
package com.dfsek.terra.world.population.items.ores;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
|
|
||||||
public class OreConfig {
|
public class OreConfig {
|
||||||
private final Range amount;
|
private final Range amount;
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
package com.dfsek.terra.world.population.items.ores;
|
package com.dfsek.terra.world.population.items.ores;
|
||||||
|
|
||||||
import com.dfsek.terra.api.TerraPlugin;
|
import com.dfsek.terra.api.TerraPlugin;
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.util.Range;
|
||||||
import com.dfsek.terra.vector.Vector3Impl;
|
import com.dfsek.terra.vector.Vector3Impl;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
import com.dfsek.terra.api.block.BlockData;
|
import com.dfsek.terra.api.block.BlockData;
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@ package com.dfsek.terra.world.population.items.tree;
|
|||||||
import com.dfsek.terra.api.vector.Location;
|
import com.dfsek.terra.api.vector.Location;
|
||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.structures.script.StructureScript;
|
import com.dfsek.terra.api.structures.script.StructureScript;
|
||||||
import com.dfsek.terra.api.structures.structure.Rotation;
|
import com.dfsek.terra.api.structure.rotation.Rotation;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
package com.dfsek.terra.world.population.items.tree;
|
package com.dfsek.terra.world.population.items.tree;
|
||||||
|
|
||||||
import com.dfsek.terra.api.math.Range;
|
import com.dfsek.terra.api.math.range.ConstantRange;
|
||||||
import com.dfsek.terra.api.noise.NoiseSampler;
|
import com.dfsek.terra.api.noise.NoiseSampler;
|
||||||
import com.dfsek.terra.api.vector.Vector2;
|
import com.dfsek.terra.api.vector.Vector2;
|
||||||
import com.dfsek.terra.api.block.Block;
|
import com.dfsek.terra.api.block.Block;
|
||||||
@@ -13,7 +13,7 @@ import com.dfsek.terra.world.population.items.PlaceableLayer;
|
|||||||
|
|
||||||
public class TreeLayer extends PlaceableLayer<Tree> {
|
public class TreeLayer extends PlaceableLayer<Tree> {
|
||||||
|
|
||||||
public TreeLayer(double density, Range level, ProbabilityCollectionImpl<Tree> layer, NoiseSampler noise) {
|
public TreeLayer(double density, ConstantRange level, ProbabilityCollectionImpl<Tree> layer, NoiseSampler noise) {
|
||||||
super(density, level, layer, noise);
|
super(density, level, layer, noise);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package profiler;
|
package profiler;
|
||||||
|
|
||||||
import com.dfsek.terra.profiler.Profiler;
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
import com.dfsek.terra.profiler.ProfilerImpl;
|
import com.dfsek.terra.profiler.ProfilerImpl;
|
||||||
|
|
||||||
public class ProfilerTest {
|
public class ProfilerTest {
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ import com.dfsek.terra.config.PluginConfig;
|
|||||||
import com.dfsek.terra.config.lang.LangUtil;
|
import com.dfsek.terra.config.lang.LangUtil;
|
||||||
import com.dfsek.terra.config.lang.Language;
|
import com.dfsek.terra.config.lang.Language;
|
||||||
import com.dfsek.terra.config.pack.ConfigPack;
|
import com.dfsek.terra.config.pack.ConfigPack;
|
||||||
import com.dfsek.terra.profiler.Profiler;
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
import com.dfsek.terra.profiler.ProfilerImpl;
|
import com.dfsek.terra.profiler.ProfilerImpl;
|
||||||
import com.dfsek.terra.registry.master.AddonRegistry;
|
import com.dfsek.terra.registry.master.AddonRegistry;
|
||||||
import com.dfsek.terra.registry.master.ConfigRegistry;
|
import com.dfsek.terra.registry.master.ConfigRegistry;
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ import com.dfsek.terra.api.world.generation.Chunkified;
|
|||||||
import com.dfsek.terra.api.world.generation.TerraChunkGenerator;
|
import com.dfsek.terra.api.world.generation.TerraChunkGenerator;
|
||||||
import com.dfsek.terra.bukkit.TerraBukkitPlugin;
|
import com.dfsek.terra.bukkit.TerraBukkitPlugin;
|
||||||
import com.dfsek.terra.bukkit.world.BukkitAdapter;
|
import com.dfsek.terra.bukkit.world.BukkitAdapter;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import com.dfsek.terra.bukkit.world.BukkitWorld;
|
import com.dfsek.terra.bukkit.world.BukkitWorld;
|
||||||
import org.bukkit.generator.BlockPopulator;
|
import org.bukkit.generator.BlockPopulator;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import com.dfsek.terra.api.vector.Location;
|
|||||||
import com.dfsek.terra.api.handle.WorldHandle;
|
import com.dfsek.terra.api.handle.WorldHandle;
|
||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import org.bukkit.TreeType;
|
import org.bukkit.TreeType;
|
||||||
|
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ import com.dfsek.terra.fabric.handle.FabricItemHandle;
|
|||||||
import com.dfsek.terra.fabric.handle.FabricWorldHandle;
|
import com.dfsek.terra.fabric.handle.FabricWorldHandle;
|
||||||
import com.dfsek.terra.fabric.util.FabricUtil;
|
import com.dfsek.terra.fabric.util.FabricUtil;
|
||||||
import com.dfsek.terra.fabric.util.ProtoBiome;
|
import com.dfsek.terra.fabric.util.ProtoBiome;
|
||||||
import com.dfsek.terra.profiler.Profiler;
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
import com.dfsek.terra.profiler.ProfilerImpl;
|
import com.dfsek.terra.profiler.ProfilerImpl;
|
||||||
import com.dfsek.terra.api.registry.DuplicateEntryException;
|
import com.dfsek.terra.api.registry.DuplicateEntryException;
|
||||||
import com.dfsek.terra.registry.master.AddonRegistry;
|
import com.dfsek.terra.registry.master.AddonRegistry;
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ import com.dfsek.terra.api.vector.Location;
|
|||||||
import com.dfsek.terra.api.world.Tree;
|
import com.dfsek.terra.api.world.Tree;
|
||||||
import com.dfsek.terra.api.util.collections.MaterialSet;
|
import com.dfsek.terra.api.util.collections.MaterialSet;
|
||||||
import com.dfsek.terra.fabric.TerraFabricPlugin;
|
import com.dfsek.terra.fabric.TerraFabricPlugin;
|
||||||
import com.dfsek.terra.profiler.ProfileFrame;
|
import com.dfsek.terra.api.profiler.ProfileFrame;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.registry.BuiltinRegistries;
|
import net.minecraft.util.registry.BuiltinRegistries;
|
||||||
import net.minecraft.world.StructureWorldAccess;
|
import net.minecraft.world.StructureWorldAccess;
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ import com.dfsek.terra.config.lang.Language;
|
|||||||
import com.dfsek.terra.config.pack.ConfigPack;
|
import com.dfsek.terra.config.pack.ConfigPack;
|
||||||
import com.dfsek.terra.platform.RawBiome;
|
import com.dfsek.terra.platform.RawBiome;
|
||||||
import com.dfsek.terra.platform.RawWorldHandle;
|
import com.dfsek.terra.platform.RawWorldHandle;
|
||||||
import com.dfsek.terra.profiler.Profiler;
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
import com.dfsek.terra.profiler.ProfilerImpl;
|
import com.dfsek.terra.profiler.ProfilerImpl;
|
||||||
import com.dfsek.terra.registry.master.AddonRegistry;
|
import com.dfsek.terra.registry.master.AddonRegistry;
|
||||||
import com.dfsek.terra.registry.master.ConfigRegistry;
|
import com.dfsek.terra.registry.master.ConfigRegistry;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ import com.dfsek.terra.api.util.logging.DebugLogger;
|
|||||||
import com.dfsek.terra.config.PluginConfig;
|
import com.dfsek.terra.config.PluginConfig;
|
||||||
import com.dfsek.terra.config.lang.Language;
|
import com.dfsek.terra.config.lang.Language;
|
||||||
import com.dfsek.terra.config.pack.ConfigPack;
|
import com.dfsek.terra.config.pack.ConfigPack;
|
||||||
import com.dfsek.terra.profiler.Profiler;
|
import com.dfsek.terra.api.profiler.Profiler;
|
||||||
import com.dfsek.terra.registry.master.AddonRegistry;
|
import com.dfsek.terra.registry.master.AddonRegistry;
|
||||||
import com.dfsek.terra.registry.master.ConfigRegistry;
|
import com.dfsek.terra.registry.master.ConfigRegistry;
|
||||||
import com.dfsek.terra.sponge.world.SpongeWorldHandle;
|
import com.dfsek.terra.sponge.world.SpongeWorldHandle;
|
||||||
|
|||||||
Reference in new issue
Block a user