Iterate features

This commit is contained in:
Daniel Mills 2021-08-10 03:29:27 -04:00
parent 099b50dbfa
commit 2f450b7ea0
3 changed files with 16 additions and 2 deletions

View File

@ -25,7 +25,6 @@ import com.volmit.iris.core.command.pregen.CommandIrisPregen;
import com.volmit.iris.core.command.studio.CommandIrisStudio; import com.volmit.iris.core.command.studio.CommandIrisStudio;
import com.volmit.iris.core.command.what.CommandIrisWhat; import com.volmit.iris.core.command.what.CommandIrisWhat;
import com.volmit.iris.core.command.world.CommandIrisCreate; import com.volmit.iris.core.command.world.CommandIrisCreate;
import com.volmit.iris.core.command.world.CommandIrisFix;
import com.volmit.iris.core.command.world.CommandIrisUpdateWorld; import com.volmit.iris.core.command.world.CommandIrisUpdateWorld;
import com.volmit.iris.core.command.world.CommandIrisVerify; import com.volmit.iris.core.command.world.CommandIrisVerify;
import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.collection.KList;

View File

@ -53,7 +53,7 @@ public class CommandIrisWhatFeatures extends MortarCommand {
if (IrisToolbelt.isIrisWorld(c.getWorld())) { if (IrisToolbelt.isIrisWorld(c.getWorld())) {
int m = 1; int m = 1;
for (IrisFeaturePositional i : ((Engine) IrisToolbelt.access(c.getWorld()).getEngine()).getEngineParallax().getFeaturesInChunk(c)) { for (IrisFeaturePositional i : ((Engine) IrisToolbelt.access(c.getWorld()).getEngine()).getMantle().getFeaturesInChunk(c)) {
sender.sendMessage("#" + m++ + " " + new JSONObject(new Gson().toJson(i)).toString(4)); sender.sendMessage("#" + m++ + " " + new JSONObject(new Gson().toJson(i)).toString(4));
} }
} else { } else {

View File

@ -43,6 +43,7 @@ import com.volmit.iris.util.math.RNG;
import com.volmit.iris.util.parallel.BurstExecutor; import com.volmit.iris.util.parallel.BurstExecutor;
import com.volmit.iris.util.parallel.MultiBurst; import com.volmit.iris.util.parallel.MultiBurst;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.Chunk;
import org.bukkit.block.TileState; import org.bukkit.block.TileState;
import org.bukkit.block.data.BlockData; import org.bukkit.block.data.BlockData;
@ -225,4 +226,18 @@ public interface EngineMantle extends IObjectPlacer {
getMantle().flag(x>>4, z>>4, MantleFlag.UPDATE, true); getMantle().flag(x>>4, z>>4, MantleFlag.UPDATE, true);
getMantle().set(x,y,z,true); getMantle().set(x,y,z,true);
} }
@ChunkCoordinates
default KList<IrisFeaturePositional> getFeaturesInChunk(Chunk c)
{
return getFeaturesInChunk(c.getX(), c.getZ());
}
@ChunkCoordinates
default KList<IrisFeaturePositional> getFeaturesInChunk(int x, int z)
{
KList<IrisFeaturePositional> pos = new KList<>();
getMantle().iterateChunk(x, z, IrisFeaturePositional.class, (a,b,c,f) -> pos.add(f), MantleFlag.FEATURE);
return pos;
}
} }