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

Основной раздел => Общие вопросы => Topic started by: Otlichnii_paren on March 02, 2020, 03:12:54 AM

Title: Клик по второй картинке
Post by: Otlichnii_paren on March 02, 2020, 03:12:54 AM
В общем такая тема надо кликнуть по первой картинке потом по второй потом по мере прохождения кода по 10ой и т.д. Реализовал это так:

...
GETSCREEN
colormode (3)
SCANPICTURE($ARR_SCAN, 0,0, $_xmax,$_ymax, "ноа.bmp", -1, 100)
$i=0
   rCLICK($ARR_SCAN[$i], $ARR_SCAN[$i+1])
   WAITMS(100)
UNDEFINE($ARR_SCAN)
.....
GETSCREEN
colormode (3)
SCANPICTURE($ARR_SCAN, 0,0, $_xmax,$_ymax, "ноа.bmp", -1, 100)
$i=0,
   rCLICK($ARR_SCAN[$i+2], $ARR_SCAN[$i+3])
   WAITMS(100)
UNDEFINE($ARR_SCAN)
....
Все работает как надо, но может есть более простой вариант исполнения данной задачи?
кликать надо не по порядку, поэтому не циклирую и картинки местами меняются...



И еще вопрос следующий из предыдущего, как более коротко организовать rnd() нажатие на один и те же картинки на странице если их 20-30 ?  отдельно для каждой прописывать sub будет слишком грамоздко. а вгонять координаты в одну переменную вроде нельзя


И еще раз уж задал вопросы то сразу же тот который меня всегда интересовал, если какая то возможность интегрировать или активировать горячую клавиши для нажатия пузы а не полной остановки клкермана? А то бывает мышь в работе и не можешь даже дотянуться до кнопки пауза, когда надо вдруг срочно сходить на соседние вкладки. А полностью останавливать сценарий не желательно.
Title: Re: Клик по второй картинке
Post by: Vint on March 02, 2020, 10:11:29 AM
И еще раз уж задал вопросы то сразу же тот который меня всегда интересовал, если какая то возможность интегрировать или активировать горячую клавиши для нажатия пузы а не полной остановки клкермана? А то бывает мышь в работе и не можешь даже дотянуться до кнопки пауза, когда надо вдруг срочно сходить на соседние вкладки. А полностью останавливать сценарий не желательно.
Ээээ... Так какая пуск, такая и пауза, по умолчанию ALT+A. Кнопка ведь подменяется.

Если у тебя картинки не пропадают. Если ты говоришь номера их прописываешь заранее, значит порядок один.
Зачем ты каждый раз делаешь?
Code: (clickermann) [Select]
GETSCREEN
colormode (3)
SCANPICTURE
...
UNDEFINE($ARR_SCAN)


И еще вопрос следующий из предыдущего, как более коротко организовать rnd() нажатие на один и те же картинки на странице если их 20-30 ?  отдельно для каждой прописывать sub будет слишком грамоздко. а вгонять координаты в одну переменную вроде нельзя
Ищешь картинку через SCANPICTURE и через RND выбираешь случайную пару  x,y в найденном массиве.
Или что ты хочешь, не очень понятно.
Title: Re: Клик по второй картинке
Post by: Otlichnii_paren on March 02, 2020, 09:58:44 PM
Quote
RND выбираешь случайную пару  x,y в найденном массиве
Как это реализвать на примере? как впихнуть пару в 1 рандом?
Title: Re: Клик по второй картинке
Post by: Vint on March 02, 2020, 11:02:44 PM
Пар координат, в 2 раза меньше чем всего координат. Логично? Всего координат = длина масива, значит пар ARRSIZE($arr)/2
Выбираешь случайное число от 0 до 'количество пар'-1
RND(0, (ARRSIZE($arr)/2) - 1)
Если полученное число умножим назад на 2, получим индекс попадающий на координату X- первую из пары.
Т.е. мы получаем одно из чисел ряда 0, 2, 4, 6, ... Чётные до конца массива.
Число по этому индексу будет X, по следующему - Y
Code: (clickermann) [Select]
$ind = RND(0, (ARRSIZE($arr)/2) - 1) * 2
$x = $arr[$ind]
$y = $arr[$ind+1]
Как то так.