mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-08 16:56:07 +00:00
use binarycolumn in locator
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.dfsek.terra.addons.feature.locator.locators;
|
||||
|
||||
import com.dfsek.terra.addons.feature.locator.patterns.Pattern;
|
||||
import com.dfsek.terra.api.structure.feature.BinaryColumn;
|
||||
import com.dfsek.terra.api.structure.feature.Locator;
|
||||
import com.dfsek.terra.api.util.Range;
|
||||
import com.dfsek.terra.api.world.Column;
|
||||
@@ -18,7 +19,7 @@ public class PatternLocator implements Locator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Integer> getSuitableCoordinates(Column column) {
|
||||
public BinaryColumn getSuitableCoordinates(Column column) {
|
||||
List<Integer> locations = new ArrayList<>();
|
||||
|
||||
for(int y : search) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.dfsek.terra.addons.feature.locator.locators;
|
||||
|
||||
import com.dfsek.terra.api.structure.feature.BinaryColumn;
|
||||
import com.dfsek.terra.api.structure.feature.Locator;
|
||||
import com.dfsek.terra.api.util.Range;
|
||||
import com.dfsek.terra.api.world.Column;
|
||||
@@ -19,7 +20,7 @@ public class RandomLocator implements Locator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Integer> getSuitableCoordinates(Column column) {
|
||||
public BinaryColumn getSuitableCoordinates(Column column) {
|
||||
long seed = column.getWorld().getSeed();
|
||||
seed = 31 * seed + column.getX();
|
||||
seed = 31 * seed + column.getZ();
|
||||
|
||||
@@ -2,13 +2,12 @@ package com.dfsek.terra.addons.feature.locator.locators;
|
||||
|
||||
import com.dfsek.terra.api.TerraPlugin;
|
||||
import com.dfsek.terra.api.block.state.BlockState;
|
||||
import com.dfsek.terra.api.structure.feature.BinaryColumn;
|
||||
import com.dfsek.terra.api.structure.feature.Locator;
|
||||
import com.dfsek.terra.api.util.ConstantRange;
|
||||
import com.dfsek.terra.api.util.Range;
|
||||
import com.dfsek.terra.api.world.Column;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class SurfaceLocator implements Locator {
|
||||
private final Range search;
|
||||
@@ -21,7 +20,7 @@ public class SurfaceLocator implements Locator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Integer> getSuitableCoordinates(Column column) {
|
||||
public BinaryColumn getSuitableCoordinates(Column column) {
|
||||
for(int y : search) {
|
||||
if(column.getBlock(y).matches(air) && !column.getBlock(y-1).matches(air)) {
|
||||
return Collections.singletonList(y);
|
||||
|
||||
@@ -2,8 +2,6 @@ package com.dfsek.terra.api.structure.feature;
|
||||
|
||||
import com.dfsek.terra.api.world.Column;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface Locator {
|
||||
List<Integer> getSuitableCoordinates(Column column);
|
||||
BinaryColumn getSuitableCoordinates(Column column);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user