Mersenne Twister? I believe there's a BlitzMAX version in the code archives somewhere.
1. Alternatively, have an array with all numbers in it. Select a random position. Swap that with the last element. Slice the Array to be one smaller. Rinse / Repeat for as many numbers as you need. This has a worst case time complexity O(n).
2. One approach would be to make the boxes in serial progression. Start in one corner, and then work your way across, then down the screen, using semi random offsets. It kinda depends on exactly what you're looking for (i.e. should the boxes cover the entire screen, or have arbitrary spaces between them, and how should they be distributed).
1. Alternatively, have an array with all numbers in it. Select a random position. Swap that with the last element. Slice the Array to be one smaller. Rinse / Repeat for as many numbers as you need. This has a worst case time complexity O(n).
2. One approach would be to make the boxes in serial progression. Start in one corner, and then work your way across, then down the screen, using semi random offsets. It kinda depends on exactly what you're looking for (i.e. should the boxes cover the entire screen, or have arbitrary spaces between them, and how should they be distributed).