As long as the point number is not used in the same branch it can be used again. If the branch already has the point number then it can't be assigned again. It sounds like your point is in the same branch already, so it can't be used again.
So to use the same point number you'd have to have a decision point (or switch) which would create branches to use numbers over again.
My subassembly has a cut/fill condition. Since it can't be in cut and fill at the same time, you can use the same point number once on each side of the condition.
I think for your block wall, you need to arrange it so that the last block drawn always has the same point codes, instead of adding new blocks after it as the wall gets taller.