检查块是否是任何液体(我的世界锻造 1.18.1)
check if block is any liquid (minecraft forge 1.18.1)
我有一个为每个块调用的函数。我希望函数 returns 在它是流体时为真(不仅是 Minecraft 流体,也就是其他 mod 流体示例:油)
这是我的代码:
public boolean shouldDestroy(BlockPos pos) {
Block block = this.getLevel().getBlockState(pos).getBlock();
boolean isDestructable = block == Blocks.BEDROCK || block == Blocks.AIR;
// liquids
boolean isDrainable = false; // set to true if block is a liquid
return !isDestructable && isDrainable;
}
我搜索过,但没有找到任何可以帮助我的东西
你可以检查方块是否是像这样的流体实例:
boolean isLiquid = block instanceof BlockLiquid || block instance IFluidBlock;
也有可能 block.getMaterial().isLiquid()
。这个方法随着时间的推移而改变,有时不存在,我不知道 1.18 的具体情况。
我有一个为每个块调用的函数。我希望函数 returns 在它是流体时为真(不仅是 Minecraft 流体,也就是其他 mod 流体示例:油)
这是我的代码:
public boolean shouldDestroy(BlockPos pos) {
Block block = this.getLevel().getBlockState(pos).getBlock();
boolean isDestructable = block == Blocks.BEDROCK || block == Blocks.AIR;
// liquids
boolean isDrainable = false; // set to true if block is a liquid
return !isDestructable && isDrainable;
}
我搜索过,但没有找到任何可以帮助我的东西
你可以检查方块是否是像这样的流体实例:
boolean isLiquid = block instanceof BlockLiquid || block instance IFluidBlock;
也有可能 block.getMaterial().isLiquid()
。这个方法随着时间的推移而改变,有时不存在,我不知道 1.18 的具体情况。