diff --git a/src/rcore.c b/src/rcore.c index cb3d8731b..75d07c7ff 100644 --- a/src/rcore.c +++ b/src/rcore.c @@ -1758,11 +1758,12 @@ int GetRandomValue(int min, int max) unsigned long t = c - (c % m); // largest multiple of m <= c unsigned long r; - do + for (;;) { r = (unsigned long)rand(); + if (r < t) break; // Only accept values within the fair region } - while (r >= t); + value = min + (int)(r % m); }