[Change] Helper for underwater survival hints
This commit is contained in:
parent
4f934cdaf0
commit
07f8bce1dc
4 changed files with 23 additions and 0 deletions
|
@ -59,6 +59,18 @@ public interface SurvivesOnSpecialGround extends SurvivesOn {
|
|||
}
|
||||
}
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public static void appendHoverTextUnderwater(List<Component> list) {
|
||||
list.add(Component.translatable("tooltip.bclib.place_underwater")
|
||||
.withStyle(ChatFormatting.GREEN));
|
||||
}
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public static void appendHoverTextUnderwaterInDepth(List<Component> list, int depth) {
|
||||
list.add(Component.translatable("tooltip.bclib.place_underwater_depth", depth)
|
||||
.withStyle(ChatFormatting.GREEN));
|
||||
}
|
||||
|
||||
default boolean canSurviveOnTop(LevelReader world, BlockPos pos) {
|
||||
return isSurvivable(world.getBlockState(pos.below()));
|
||||
}
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
package org.betterx.bclib.interfaces;
|
||||
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.world.level.LevelReader;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -12,4 +15,8 @@ public interface SurvivesOnWater extends SurvivesOnBlocks {
|
|||
default List<Block> getSurvivableBlocks() {
|
||||
return BLOCKS;
|
||||
}
|
||||
|
||||
default boolean canSurvive(BlockState state, LevelReader world, BlockPos pos) {
|
||||
return world.getBlockState(pos).isAir() && isTerrain(world.getBlockState(pos.below()));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue