В игре при запуске выскакивает окно с меняющей свой цвет кнопкой. Чтобы найти кнопку, создал скрины с разным ее состоянием. Запихнул их в массив и прохожусь циклом. Оно как бы работает, кнопка находится, но поиск идет относительно долго и не заканчивается пока весь цикл не пройдет. По факту находится несколько совпадений. Вопрос - как заставить скрипт прерывать цикл при первом нахождении картинки. Или может не стоит заморачиваться с массивом?
SUB(reklamapb)
IF($log = 1)
LOGWRITE(STRCONCAT($name, " - Ищем Рекламу ПБ"))
END_IF
WAITMS(100)
GETFILELIST($buy_arr, "Screen\buy\*.bmp") // Помещаем образцы рекламы в массив
$time = $_time_t + 120
WHILE($time > $_time_t)
GETSCREEN ($x1_buy, $y1_buy, $x2_buy, $y2_buy)
COLORMODE(4)
FOR($buy_num=0,$buy_num<ARRSIZE($buy_arr))
IF_PICTURE_IN ($x1_buy, $y1_buy, $x2_buy, $y2_buy, STRCONCAT("Screen\buy\", $buy_arr[$buy_num]), -1, 90)
$time = 0
$st_rekpb = 0
IF($log = 1)
LOGWRITE(STRCONCAT($name, " - Нашли Рекламу ПБ"))
END_IF
WAITMS(100)
ELSE
WAITMS(500)
END_IF
END_CYC
END_CYC
IF($time ! 0)
IF($log = 1)
LOGWRITE(STRCONCAT($name, " - Не нашли Рекламу ПБ"))
END_IF
$st_rekpb = 1
END_IF
END_SUB