I am using setBlockAndUpdate to place blocks in a straight line in the UP direction in the world. However, if the block has active isAir, they are placed only up to a certain height.
Here are two screenshots to illustrate the problem:
In the first screenshot, the blocks start being placed at Y -60 and go up to -49. In the second screenshot, placing a random block at -48 causes the height at which the block with isAir is placed to increase for some reason.
My block class:
public class TestBlock extends Block {
public TestBlock() {
super(BlockBehaviour.Properties.of(Material.AIR).noOcclusion());
}
public boolean isAir(BlockState state) {
return true;
}
@Override
public VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context)
{
return Shapes.empty();
}
}
I need the isAir to be active because I don't want my block to interfere with other blocks, such as fire spread and tree growth, or other mods.
What could be the possible cause of the problem, and is there any way to work around it?
Thanks.