Поиск пикселя и клик. Topic is solved

Помощь в написании скриптов
AlexOsscr
Posts: 4
Joined: 19 Sep 2017, 18:49

Поиск пикселя и клик.

04 Nov 2023, 08:14

Здравствуйте.
Самостоятельно не получилось...
Помогите пожалуйста написать скрипт.
При нахождении цвета #F7BC5B или #DEA755(и тот и тот песочно-оранжевый только оттенок другой не знаю можно ли как то указать еще и погрешность цвета чтоб на любой примерно такой же срабатывал), в области экрана (левый верхний угол x-2210, y-600 правый нижний угол x-2240, y-650) делал клик мышкой и так бесконечно пока не завершу работу скрипта.
В интернете искал толком ничего не нашел. Ну или что то оооочень сложнореализуемое для меня.
Пробывал вот так написать и конечно ничего не получилось...

Code: Select all

loop
{
PixelSearch, 2210, 600, 2240, 650, 0xF7BC5B
MouseClick, left
PixelSearch, 2210, 600, 2240, 650, 0xDEA755
MouseClick, left
}
Сильно только не бейте) Понимаю что это наверное чушь написана, а не скрипт... но я не умею... вот обращаюсь за помощью может кто то поможет)
Guest

Re: Поиск пикселя и клик.

04 Nov 2023, 09:41

AlexOsscr wrote: Самостоятельно не получилось...
В документации на PixelSearch написан порядок аргументов:
PixelSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ColorID [, Variation, Mode]
У Вас пропущены переменные, в которые нужно записать координаты найденного пикселя.

Искомый цвет для PixelSearch задаётся в формате BGR, то есть, вместо 0xF7BC5B нужно писать 0x5BBCF7, или записать RGB в аргумент Mode.
Погрешность задаётся аргументом Variation, от 0 до 255.

После поиска нужно проверить, нашёлся ли искомый цвет.

Code: Select all

Loop
{
   PixelSearch, px1, py1, 2210, 600, 2240, 650, 0xF7BC5B, 8, RGB
   If (px1 != "")
      MouseClick, Left
   
   PixelSearch, px2, py2, 2210, 600, 2240, 650, 0xDEA755, 8, RGB
   If (px2 != "")
      MouseClick, Left
   
   Sleep 50
}
GiT GuD
AlexOsscr
Posts: 4
Joined: 19 Sep 2017, 18:49

Re: Поиск пикселя и клик.  Topic is solved

04 Nov 2023, 11:12

Огромное спасибо.
Можно несколько вопросов... Чисто для своего понимания...
То есть если указано вот так

Code: Select all

PixelSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ColorID [, Variation, Mode]
То обязательно нужно все аргументы указывать? Просто я не знал не понимаю что такое OutputVarX и OutputVarY и просто ничего не написал...
У Вас вместо этого указано px1 и py1 что это означает?
В строчке цифра 8 это Variation как я понял, а RGB это Mode...
Но если я буду искать именно определённый цвет и указывать цвет в BGR то можно не писать 8 и RGB так?
Щас домой поеду попробую) Еще раз огромное спасибо за помощь!
Guest

Re: Поиск пикселя и клик.

04 Nov 2023, 12:06

AlexOsscr wrote: обязательно нужно все аргументы указывать?
Аргументы указываются в заданном порядке через запятую. Аргументы в квадратных скобках необязательны, их можно опускать. Некоторые аргументы также можно опускать (какие именно и как себя будет вести скрипт в этом случае — смотрите в документации), но обязательно оставлять запятые, чтобы скрипт мог разобраться, где какой аргумент.
Например, можно написать так: PixelSearch,,, X1, Y1, X2, Y2, ColorID — тогда координаты пикселя с найденным цветом не будут сохранены (можно будет только узнать, нашёлся он или нет, через встроенную переменную ErrorLevel), вариативность будет по умолчанию выставлена в ноль, а режим останется BGR.
AlexOsscr wrote: У Вас вместо OutputVarX и OutputVarY указано px1 и py1 что это означает?
Это имена переменных, в которые запишутся координаты найденного пикселя. Если пиксель нужного цвета не отыщется, эти переменные окажутся пустыми.
AlexOsscr wrote: Но если я буду искать именно определённый цвет и указывать цвет в BGR то можно не писать 8 и RGB, так?
Да, всё верно.
AlexOsscr
Posts: 4
Joined: 19 Sep 2017, 18:49

Re: Поиск пикселя и клик.

04 Nov 2023, 13:42

Огромное спасибо за помощь и краткий курс скриптостроения)

p.s. чет я куда то жмякнул не туда... на зеленую галочку...

Return to “Помощь”

Who is online

Users browsing this forum: No registered users and 15 guests