Add missing important BlockStateListPopulator methods (#7952)
This commit is contained in:
parent
4a48ed306d
commit
17c1c6c3e7
|
@ -0,0 +1,39 @@
|
||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
|
||||||
|
Date: Sun, 12 Jun 2022 13:25:52 -0400
|
||||||
|
Subject: [PATCH] Add missing important BlockStateListPopulator methods
|
||||||
|
|
||||||
|
Without these methods it causes exceptions due to these being used by certain feature generators.
|
||||||
|
|
||||||
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java b/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java
|
||||||
|
index 8e6a71c1e8b53faa70b893c76f5bd25f96a5e142..03153abb425acf2d615acc386c91a6524aaa80bf 100644
|
||||||
|
--- a/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java
|
||||||
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java
|
||||||
|
@@ -129,4 +129,27 @@ public class BlockStateListPopulator extends DummyGeneratorAccess {
|
||||||
|
public DimensionType dimensionType() {
|
||||||
|
return this.world.dimensionType();
|
||||||
|
}
|
||||||
|
+ // Paper start
|
||||||
|
+ @Override
|
||||||
|
+ public boolean isFluidAtPosition(BlockPos pos, Predicate<FluidState> state) {
|
||||||
|
+ return state.test(this.getFluidState(pos));
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public <T extends BlockEntity> java.util.Optional<T> getBlockEntity(BlockPos pos, net.minecraft.world.level.block.entity.BlockEntityType<T> type) {
|
||||||
|
+ BlockEntity tileentity = this.getBlockEntity(pos);
|
||||||
|
+
|
||||||
|
+ return tileentity != null && tileentity.getType() == type ? (java.util.Optional<T>) java.util.Optional.of(tileentity) : java.util.Optional.empty();
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public BlockPos getHeightmapPos(net.minecraft.world.level.levelgen.Heightmap.Types heightmap, BlockPos pos) {
|
||||||
|
+ return world.getHeightmapPos(heightmap, pos);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public net.minecraft.world.level.storage.LevelData getLevelData() {
|
||||||
|
+ return world.getLevelData();
|
||||||
|
+ }
|
||||||
|
+ // Paper end
|
||||||
|
}
|
Loading…
Reference in New Issue