diff --git a/common/api/src/main/java/com/dfsek/terra/api/util/collection/ProbabilityCollection.java b/common/api/src/main/java/com/dfsek/terra/api/util/collection/ProbabilityCollection.java index 82ef88c18..cf94c16e9 100644 --- a/common/api/src/main/java/com/dfsek/terra/api/util/collection/ProbabilityCollection.java +++ b/common/api/src/main/java/com/dfsek/terra/api/util/collection/ProbabilityCollection.java @@ -7,6 +7,9 @@ package com.dfsek.terra.api.util.collection; +import com.dfsek.terra.api.util.vector.Vector3; +import com.dfsek.terra.api.util.vector.Vector3Int; + import org.jetbrains.annotations.NotNull; import java.util.Collection; @@ -52,6 +55,18 @@ public class ProbabilityCollection implements Collection { return (E) array[MathUtil.normalizeIndex(n.noise(seed, x, y, z), array.length)]; } + @SuppressWarnings("unchecked") + public E get(NoiseSampler n, Vector3Int vector3Int, long seed) { + if(array.length == 0) return null; + return (E) array[MathUtil.normalizeIndex(n.noise(seed, vector3Int.getX(), vector3Int.getY(), vector3Int.getZ()), array.length)]; + } + + @SuppressWarnings("unchecked") + public E get(NoiseSampler n, Vector3 vector3Int, long seed) { + if(array.length == 0) return null; + return (E) array[MathUtil.normalizeIndex(n.noise(seed, vector3Int.getX(), vector3Int.getY(), vector3Int.getZ()), array.length)]; + } + @SuppressWarnings("unchecked") public E get(NoiseSampler n, double x, double z, long seed) { if(array.length == 0) return null;