Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: ornatus on February 20, 2015, 07:10:54 AM
-
Подскажите пожалуйста как найти слово TEST (см. вложение) на данной картинке. при этом фоны всегда разные а слово всегда одно и то же
-
Используй функцию IF_PICTURE_IN для поиска картинок.
GETSCREEN
IF_PICTURE_IN (100,100, 600,600, "file.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF
Сделай картинку для поиска, достаточно вырезать верхнюю горизонтальную палочку у буквы Т без захвата фона. Получится такой белый прямоугольник. Его и ищи. Кликать кстати можно со смещением.
LCLICK($_return1+20,$_return2+10) // клик правее и ниже
-
Блин ну тогда забыл сказать что есть слова еще и другие на экране.. скажем : TEM... TEG.. т.е. прямоугольник вырезать не получится
-
О в нашей игре появились новые правила...
Тогда вырезай слово полностью, а оставшийся фон вокруг букв закрась в графическом редакторе например яркозеленым, и укажи код этого яркозеленоко цвета в функции как прозрачность
за место -1 пиши код цвета считаемой кликером за прозрачность в картинке.
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 100)
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF
-
спасибо за ответ, и еще тогда вопрос а текст я могу на 1px уменьшить чтобы исключить ошибки поиска (ведь смежные пиксели могут иметь не четко белый цвет)?
-
Ну неужели так сложно прочесть справку?
Есть в кликере такая весч как цветокоррекция. Она упрощает графику уменьшая оттенки. И процент совпадения чтобы проигнорировать частичные несовпадения.
Сохрани такой скрипт, запусти и рядом со скриптом появится папка куда будут сохраняться скриншоты с цветокоррекцией. Из этих скринов нужно вырезать фрагмент для поиска и указать туже цветокоррекцию в скрипте
// Получение скриншота с цветокоррекцией (фильтр 6)
GETSCREEN
COLORMODE(6)
SCREENSHOT
HALT
GETSCREEN
COLORMODE(6) // тот же уровень
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 90) // 90 в данном случае 90 % совпадения
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF