Stand mal vor einem ähnlichen Problem.
Mit diesem Code sollte es gehen.
Dafür braucht für den Loop einen zusätzlichen Switch, damit man beim Rausspringen aus der Schleife gleich am Ende des Skriptes kommt, damit es bei erneuten Aufrufen bzw. Switch setzten wieder von vorne beginnt.
Nachteilig sind die vielen IF-Bedingungen, aber die gehen ja schnell mit copy&paste.
--
Zu jeder Zeit, an jedem Ort, bleibt das Tun der Menschen das gleiche...
-- Legend of Galactic Heroes