Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: georgmann on December 12, 2018, 06:02:16 AM
-
Доброй ночи.
Суть работы скрипта в том, чтобы дождаться изменения картинки в определённой области и продолжить дальнейшие действия.
Проблема в том, что иногда окно, в котором производится поиск, после действия LCLICK(1122,333) зависает и соответственно сравнение двух хешей с заданной области зацикливается до бесконечности.
Вопрос: как сделать, чтобы снятие хеша $hash2 производилось к примеру 2 минуты и если изменений не обнаружено, то повторилось бы действие кода LCLICK(1122,333) после чего продолжилось бы снятие хеша $hash2 и в случае сравнения и обнаружения изменений выполнилось бы дальнейшее действие по скрипту.
Спасибо за помощь. :)
Часть кода:
GETSCREEN
$hash1 = PXLCRC(1338,436, 1346,441) // снимаем хеш с области
WAITMS (100)
LCLICK(1151,274)
WAITMS (100)
KEYDOWN (#CTRL)
WAITMS (100)
KEYPRESS(#A)
WAITMS (100)
KEYPRESS(#V)
WAITMS (100)
KEYUP (#CTRL)
WAITMS (100)
LCLICK(1122,333)
WAITMS (1000)
skip:
GETSCREEN
$hash2 = PXLCRC(1338,436, 1346,441) // снимаем хеш с области
IF($hash1 = $hash2) // сравниваем
goto(skip)
ELSE
goto(skip1)
END_IF
skip1:
-
На гото далеко не уедешь....
GETSCREEN
$hash1 = PXLCRC(1338,436, 1346,441) // снимаем хеш с области
WAITMS (100)
LCLICK(1151,274)
WAITMS (100)
KEYDOWN (#CTRL)
WAITMS (100)
KEYPRESS(#A)
WAITMS (100)
KEYPRESS(#V)
WAITMS (100)
KEYUP (#CTRL)
WAITMS (100)
$check = 0
WHILE($check = 0) // цикл клика и сравнения хешей
LCLICK(1122,333)
WAITMS (1000)
$time = $_time_t + 120 // таймер на 2 минуты
WHILE($time > $_time_t) // цикл сравнения хешей на 2 минуты
GETSCREEN(1338,436, 1346,441)
$hash2 = PXLCRC(1338,436, 1346,441) // снимаем хеш с области
IF($hash1 = $hash2) // сравниваем
WAITMS(30)
ELSE
$time = 0 // если отличаются присваиваем $time значение 0, выходим из цикла хешей
END_IF
END_CYC
IF($time = 0) // если $time равна 0
$check = 1 // выходим из цикла клика и сравнения хешей
END_IF
END_CYC
-
На гото далеко не уедешь....
Похоже, что так и есть.
Сама программа просто шикарная.
Скрипт работает, правда пока не было возможности увидеть его работу при зависании, но это дело времени.
Благодарю за помощь. :)