Циклы в Clickermann

Существует по крайней мере 3 способа зациклить сценарий в Кликермане.

Например, есть следующий сценарий, который нужно повторить 30 раз.

WAIT(2)
LCLICK(3074,962) // запускает программу
WAIT(2)
LCLICK(2384,397) // выбирает нужную закладку
WAIT(2)
LCLICK(2710,763) // выбор дополнительной функции в программе, потом пауза в 10 сек.
WAIT(10)

1. Цикл FOR – выполняется определенное количество раз

DEFINE($i,0) //  вводим переменную  для подсчета циклов
FOR ($i, $i<30) // все, что между FOR и END_CYC, будет повторяться 30 раз
DBLCLICK(2456,417)
WAIT(2)
LCLICK(2518,459)
WAIT(2)
LCLICK(2565,616)
WAIT(2)
LCLICK(2933,723)
WAIT(2)
END_CYC

2. Цикл WHILE – выполняется, пока выполняется условие

Этот цикл выполняется пока верно условие.
Например есть такая задача: искать красный пиксел на экране. После нахождения цикл должен прекратиться, а скрипт продолжит работу дальше.

$var = 1
while($var = 1)
GETSCREEN
IF_PIXEL_IN (10,20, 100, 40, 255) // если нужный пиксел найден
$var = 0 // меняем значение переменной, чтобы при следующей проверке цикл прекратился
Else
WAITMS (100)
END_IF
end_cyc

Вместо IF_PIXEL_IN можно использовать функции PXL или IF_PICTURE_IN.

3. С помощью метки

Здесь используется искусственный прием создания цикла через метку.

Зациклим тот же код, что использовали в первом примере. Сделаем так:

DEFINE($aaa,0) // вводим переменную для подсчета циклов
start:

DBLCLICK(2456,417) 
WAIT(2)
LCLICK(2518,459) 
WAIT(2)
LCLICK(2565,616)
WAIT(2)
LCLICK(2933,723) 

INC ($aaa, 1) // увеличиваем переменную на 1

IF($aaa = 30) // если переменная стала равна 30, останавливаем выполнение скрипта
HALT
END_IF

GOTO (start) // если счет циклов не равен 30, возвращаемся к start:

Понравилась статья? Поделиться с друзьями:
CLICKERMANN

Комментарии:

Добавить комментарий

* Нажимая на кнопку "Отправить комментарий" Вы соглашаетесь с политикой конфиденциальности.