do <инструкция> until(<выражение>)
Этот оператор (может также быть блоком) будет выполнен, пока выражение истинно. Оператор выполняется, по крайней мере, один раз. Будьте внимательны при построении своих циклов. Вы можете их навсегда зациклить, при этом Ваша игра зависнет и не будет реагировать на любой ввод пользователя.
Пример
Следующая программа пытается установить текущий объект в свободную позицию (это почти то же, что и действие для перемещения объекта в случайную позицию).
{
do
{
x = random(room_width);
y = random(room_height);
}
until (place_free(x,y))
}