Автокликер Clickermann :: Форум

Основной раздел => Использование => Topic started by: zkripter on March 05, 2016, 05:26:17 PM

Title: Поиск изображения
Post by: zkripter on March 05, 2016, 05:26:17 PM
Приветствую всех  :)

Как определить, что функция if_picture_in нашла изображение? Вообще, по-моему, она работает как-то странно или я что-то намудрил.

Алгоритм такой:
1) Запускаю этот скрипт. Теперь на диске - участок экрана в .bmp;
2) Убираю строку "третья";
3) Экран не меняю. Запускаю скрипт снова. Он печатает правильные результат;
4) Меняю экран. Запускаю скрипт. Результат тот-же  >:(. Переменные $_return1 и $_return2 не поменялись. Как определить, что экран изменился.

Кстати, если ввести строки "первая" и "вторая" и повторить весь алгоритм, то функция if_picture_in вообще никогда не меняет результаты - как были -1, так и остаются  >:(.

Как правильно определить, что область экрана изменилась?

Code: [Select]
#name "test script"

sub (print_res)
 define($str)

 $str = $_return1
 $str = strconcat($str, "_", $_return2)
 
 print($str)
end_sub

//$_return1 = -1 // первая
//$_return2 = -1 // вторая

print_res ()

wait(1)

getscreen

screenshotex(254, 59, 275, 595, "stt") // третья

if_picture_in(254, 59, 275, 595, "screens\stt0000.bmp")

print_res ()

//dialogbox($str, 0, 4)

halt
Title: Re: Поиск изображения
Post by: Кликермен on March 05, 2016, 05:46:59 PM
надо писать скрипт так, чтобы не исправлять каждый раз строки. запусти этот скриптик.  И еще,  почисти папки screen


Code: (clickermann) [Select]
#name "test script"
sub(pict)
   getscreen
   if_picture_in(250, 50, 290, 600, "screens\stt0000.bmp")
      $str = $_return1
      $str = strconcat($str, "_", $_return2)
      print($str)
else
      print("не найдено")
end_if
end_sub
getscreen

screenshotex(254, 59, 275, 595, "stt") // третья

$m2r= dialogbox("скрин сохранен", 0, 3)
$mr = dialogbox("Найти скриншот?", 4, 2)
if ($mr=6)
   pict()
end_if

wait(2)
$m2r= dialogbox("обнови экран", 0, 3)
$mr = dialogbox("Найти старый скриншот?", 4, 2)

if ($mr=6)
   pict()
end_if

halt
Title: Re: Поиск изображения
Post by: zkripter on March 05, 2016, 06:14:24 PM
Спасибо

Все переписал, теперь работает  :D

Я гайд просто невнимательно читал, пропустил else ... end_if
Title: Re: Поиск изображения
Post by: Oraven on March 06, 2016, 08:00:13 AM
В системные переменные нельзя ничего записывать. Потому что создадутся обычные не системные переменные и все обращение будет идти к ним.