mirror of
https://github.com/PaperMC/Paper.git
synced 2024-08-20 11:22:56 +02:00
40 lines
1.8 KiB
Diff
40 lines
1.8 KiB
Diff
|
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
|
||
|
}
|