I'm not really sure what I'm doing here, so here's my code:
private static final VoxelShape INSIDE = makeCuboidShape(2.0D, 2.0D, 0.0D, 12.0D, 14.0D, 14.0D);
protected static final VoxelShape SHAPE = VoxelShapes.combineAndSimplify(VoxelShapes.fullCube(), VoxelShapes.or(makeCuboidShape(0.0D, 2.0D, 0.0D, 2.0D, 14.0D, 16.0D), makeCuboidShape(14.0D, 2.0D, 0.0D, 2.0D, 14.0D, 16.0D), makeCuboidShape(2.0D, 2.0D, 14.0D, 12.0D, 14.0D, 2.0D), makeCuboidShape(0.0D, 0.0D, 0.0D, 16.0D, 2.0D, 16.0D), INSIDE), IBooleanFunction.ONLY_FIRST);
@Override
public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) {
return SHAPE;
}
For some reason, the block is acting like a whole block.