Skip to content

Commit 511d3ff

Browse files
committed
Add iterateBlockEntities method to Chunk
1 parent 809847f commit 511d3ff

File tree

4 files changed

+22
-0
lines changed

4 files changed

+22
-0
lines changed

BlueMapCore/src/main/java/de/bluecolored/bluemap/core/world/Chunk.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
import de.bluecolored.bluemap.core.world.block.entity.BlockEntity;
2929
import org.jetbrains.annotations.Nullable;
3030

31+
import java.util.function.Consumer;
32+
3133
public interface Chunk {
3234

3335
Chunk EMPTY_CHUNK = new Chunk() {};
@@ -79,4 +81,6 @@ default boolean hasOceanFloorHeights() {
7981

8082
default @Nullable BlockEntity getBlockEntity(int x, int y, int z) { return null; }
8183

84+
default void iterateBlockEntities(Consumer<BlockEntity> consumer) { }
85+
8286
}

BlueMapCore/src/main/java/de/bluecolored/bluemap/core/world/mca/chunk/Chunk_1_13.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141

4242
import java.util.HashMap;
4343
import java.util.Map;
44+
import java.util.function.Consumer;
4445

4546
public class Chunk_1_13 extends MCAChunk {
4647

@@ -219,6 +220,11 @@ public int getOceanFloorY(int x, int z) {
219220
return blockEntities.get((long) y << 8 | (x & 0xF) << 4 | z & 0xF);
220221
}
221222

223+
@Override
224+
public void iterateBlockEntities(Consumer<BlockEntity> consumer) {
225+
blockEntities.values().forEach(consumer);
226+
}
227+
222228
private @Nullable Section getSection(int y) {
223229
y -= sectionMin;
224230
if (y < 0 || y >= this.sections.length) return null;

BlueMapCore/src/main/java/de/bluecolored/bluemap/core/world/mca/chunk/Chunk_1_16.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242

4343
import java.util.HashMap;
4444
import java.util.Map;
45+
import java.util.function.Consumer;
4546

4647
public class Chunk_1_16 extends MCAChunk {
4748

@@ -214,6 +215,11 @@ public int getOceanFloorY(int x, int z) {
214215
return blockEntities.get((long) y << 8 | (x & 0xF) << 4 | z & 0xF);
215216
}
216217

218+
@Override
219+
public void iterateBlockEntities(Consumer<BlockEntity> consumer) {
220+
blockEntities.values().forEach(consumer);
221+
}
222+
217223
private @Nullable Section getSection(int y) {
218224
y -= sectionMin;
219225
if (y < 0 || y >= this.sections.length) return null;

BlueMapCore/src/main/java/de/bluecolored/bluemap/core/world/mca/chunk/Chunk_1_18.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242

4343
import java.util.HashMap;
4444
import java.util.Map;
45+
import java.util.function.Consumer;
4546

4647
public class Chunk_1_18 extends MCAChunk {
4748

@@ -205,6 +206,11 @@ public int getOceanFloorY(int x, int z) {
205206
return blockEntities.get((long) y << 8 | (x & 0xF) << 4 | z & 0xF);
206207
}
207208

209+
@Override
210+
public void iterateBlockEntities(Consumer<BlockEntity> consumer) {
211+
blockEntities.values().forEach(consumer);
212+
}
213+
208214
private @Nullable Section getSection(int y) {
209215
y -= sectionMin;
210216
if (y < 0 || y >= this.sections.length) return null;

0 commit comments

Comments
 (0)