This should probably be `minumumRed + (random() * (maximumRed - minimumRed))` (and same for the rest of them).  Do you see why?