Reply to Michael P., rand() & TYPES_OF_TILES never use rand like that (the low order bit on many rands toggles every single time) better (I think): rand() / (TYPES_OF_TILES / RAND_MAX)