From 97a62752c6fec9cf31b5e89a1a2a3afabc540031 Mon Sep 17 00:00:00 2001 From: Daniel Mills Date: Tue, 10 Aug 2021 03:43:24 -0400 Subject: [PATCH] Compiles --- src/main/java/com/volmit/iris/engine/IrisEngine.java | 2 +- .../java/com/volmit/iris/engine/mantle/EngineMantle.java | 7 ++++++- src/main/java/com/volmit/iris/util/mantle/MantleChunk.java | 3 ++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/volmit/iris/engine/IrisEngine.java b/src/main/java/com/volmit/iris/engine/IrisEngine.java index f73e67d02..d8f06649d 100644 --- a/src/main/java/com/volmit/iris/engine/IrisEngine.java +++ b/src/main/java/com/volmit/iris/engine/IrisEngine.java @@ -378,7 +378,7 @@ public class IrisEngine extends BlockPopulator implements Engine { getRavineModifier().modify(x, z, vblocks, multicore); getPostModifier().modify(x, z, vblocks, multicore); getDecorantActuator().actuate(x, z, blocks, multicore); - getMantle().insertMatter(x>>4, z>>4, blocks); + getMantle().insertMatter(x>>4, z>>4, BlockData.class, blocks); getDepositModifier().modify(x, z, blocks, multicore); } case ISLANDS -> { diff --git a/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java b/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java index 1cd41688e..2b8dbc20c 100644 --- a/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java +++ b/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java @@ -42,6 +42,7 @@ import com.volmit.iris.util.mantle.TectonicPlate; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.parallel.BurstExecutor; import com.volmit.iris.util.parallel.MultiBurst; +import com.volmit.iris.util.scheduling.PrecisionStopwatch; import org.bukkit.Bukkit; import org.bukkit.Chunk; import org.bukkit.block.TileState; @@ -215,9 +216,13 @@ public interface EngineMantle extends IObjectPlacer { } @ChunkCoordinates - default void insertMatter(int x, int z, Hunk blocks) + default void insertMatter(int x, int z, Class t, Hunk blocks) { + if (!getEngine().getDimension().isUseMantle()) { + return; + } + getMantle().iterateChunk(x, z, t, blocks::set); } @BlockCoordinates diff --git a/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java b/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java index 9b9db5e49..df3014dc9 100644 --- a/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java +++ b/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java @@ -174,6 +174,7 @@ public class MantleChunk { public void iterate(Class type, Consumer4 iterator) { for(int i = 0; i < sections.length(); i++) { + int bs = (i << 4); Matter matter = get(i); if(matter != null) @@ -182,7 +183,7 @@ public class MantleChunk { if(t != null) { - t.iterateSync(iterator); + t.iterateSync((a, b, c, f) -> iterator.accept(a,b + bs, c, f)); } } }