Wenn mich nicht alles Täuscht, kann random Zahlen bis 2147483647 liefern Und Delay Zahlen bis 4294967295 korrekt verarbeiten.
evtl:
random (10000L, 30000L);
Ansonsten:
Verzichte doch lieber auf das delay() und arbeite lieber mit der "Nachtwächter Erklärung"