package net.minecraft.world.level.block; import com.mojang.serialization.MapCodec; import net.minecraft.core.BlockPos; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.pathfinder.PathComputationType; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.VoxelShape; public class SoulSandBlock extends Block { public static final MapCodec CODEC = simpleCodec(SoulSandBlock::new); private static final VoxelShape SHAPE = Block.column(16.0, 0.0, 14.0); @Override public MapCodec codec() { return CODEC; } public SoulSandBlock(final BlockBehaviour.Properties properties) { super(properties); } @Override protected VoxelShape getCollisionShape(final BlockState state, final BlockGetter level, final BlockPos pos, final CollisionContext context) { return SHAPE; } @Override protected VoxelShape getBlockSupportShape(final BlockState state, final BlockGetter level, final BlockPos pos) { return Shapes.block(); } @Override protected VoxelShape getVisualShape(final BlockState state, final BlockGetter level, final BlockPos pos, final CollisionContext context) { return Shapes.block(); } @Override protected boolean isPathfindable(final BlockState state, final PathComputationType type) { return false; } @Override protected float getShadeBrightness(final BlockState state, final BlockGetter level, final BlockPos pos) { return 0.2F; } }