Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: FJ on December 14, 2015, 06:03:59 PM
-
Вроде простая задача, но не могу понять, как это сделать.
Допустим сохраняю части экрана в папку с помощью SCREENSHOTEX.
Затем идет условие с помощью IF_PICTURE_IN, если нахожу картинку - то одно действие, если не нахожу, делаю скрин.
Как реализовать?
-
Не все так просто, кликер не может определить количества сделанных снимков, поэтому дополнительно нужно вести учет сделанных снимков в файл INI
Вот пример. Можно оценить работу например открыв альбом с фотографиями в контакте. Запускаем скрипт, делается первый скриншот и теперь кликер знает что на экране первая фотография из альбома. Переключаем на следующую фотку, и скрипт тут же сделает новый снимок и будет знать что это фото 2. Теперь можно переключать фото в альбоме туда сюда а скрипт покажет какой номер фото он видит.
IF(TFCOUNT("config.ini")>0)
$Image_count_s = INT(INIREAD("config.ini", "Image_count_s"))
ELSE
$Image_count_s = 0
INIWRITE("config.ini", "Image_count_s", "0")
END_IF
$check = 0
$gen = 0
$Image_count = 0
GETSCREEN
WHILE($check = 0)
$len = STRLEN($gen)
IF($len < 2)
$num = STRCONCAT ("000", $gen)
Else
IF($len < 3)
$num = STRCONCAT ("00", $gen)
Else
IF($len < 4)
$num = STRCONCAT ("0", $gen)
Else
$num = $gen
END_IF
END_IF
END_IF
INC($gen,1)
INC($Image_count,1)
IF($Image_count > $Image_count_s)
$check = 2 //
ELSE
IF_PICTURE_IN (692, 428, 709, 435, STRCONCAT("screens\Image_", $num,".bmp"), -1, 100) // поиск фрагментов
$check = 1
END_IF
END_IF
END_CYC
IF($check = 1)
HINTPOPUP (STRCONCAT("Картинка ", $Image_count, " найдена"))
// здесь действие если картинка найдена
WAIT(1)
ELSE
// здесь действие если картинка не найдена (делаем новый снимок)
INIWRITE("config.ini", "Image_count_s", $Image_count) // запись в базу данных количества сделанных скринов
screenshotex(692, 428, 709, 435, "Image_", 0) // новый снимок
HINTPOPUP ("Новый скриншот") // сообщение в трей (не обязательно)
BEEP(800,200) // звуковой сигнал (не обязательно)
WAIT(1)
END_IF
Чтобы сбросить базу данных, нужно удалить файл "config.ini" и папку "screens".
Потесть скрипт в отдельной папке и увидишь как это работает.
-
Можно определять количество снимков в папке батником. Батник можно генерировать на лету.
Если не используются русские буквы в именах, то можно и одними cmd командами.
Вот уже решали подобную задачу:
http://crapware.aidf.org/forum/index.php?topic=1752.msg11301#msg11301
-
Спасибо!
Буду разбираться и внедрять! :)
-
а делать свои имена своим счетчиком нельзя?