If anyone needs a working one for 1.18:
int radius = 9;
int centre = radius / 2, squareDistance;
int x1, y1, z1;
for(x1 = centre - radius; x1 < centre + radius; x1++){
for(y1 = centre - radius; y1 < centre + radius; y1++){
for(z1 = centre - radius; z1 < centre + radius; z1++) {
squareDistance = (x1 -centre) * (x1 -centre) + (y1-centre) * (y1-centre) + (z1-centre) * (z1-centre);
if(squareDistance <= (radius) * (radius))
context.level().setBlock(new BlockPos(x + x1, y + y1, z + z1), Blocks.BEDROCK.defaultBlockState(), 11);
}
}
}