Тема: AHK: действия при последовательном изменении A_Index
Данный кусок скрипта работает, но мне интересно насколько он грамотно или неграмотно написан. Задача была такая:
- бесконечный цикл, внутри которого например поиск пикселя.
- при последовательном, успешном поиске пикселя "PixelSearch" больше 2-ух раз, выходить из цикла.
Т.е. в цикле мы можем сколько угодно раз находить пиксель, главное, чтобы это было не подряд (2 и более), иначе цикл завершиться.
Counter_Steps := 0
kf := 0
kf1 := 0
Main:
Loop
{
msgbox, count %A_index%
PixelSearch, Px, Py, 0, 0, 0, 0, 0x000000, 0, Fast RGB
if ErrorLevel
{
kf1 := A_index - kf ; отнимаем текущий A_index от A_index прошлой итерации
kf := A_index ; записываем A_index на текущий момент
msgbox, %kf1%
if kf1 = 1 ; если был найден пиксель две итерации подряд, то включаем счетчик (не более 2 раз)
{
Counter_Steps_On += 1
if Counter_Steps_On >= 2
{
break Main
}
}
}
}