Что нового

[Мышь, клавиатура] Поиск цвета и клик

Art4D

Новичок
Сообщения
22
Репутация
2
Вот скрипт:
Код:
$Color = 0xFDFDC5 ;Это цвет
$Dip_Col = 50 ;Допустимое несовпадение цвета от указанного (допустимое значение от 0 - точное, до 255) - ПОГРЕШНОСТЬ.
$Rezult = PixelSearch( 6, 57, 1276, 957, $Color, $Dip_Col) ; ищет пиксель

Нужно, чтобы после поиска пикселя он на него нажал иэтот скрипт повторялся много раз
 

edward_freedom

Осваивающий
Сообщения
200
Репутация
44
Код:
HotKeySet("{F10}","ExitApp")
Func ExitApp() ;выходим по нажатию Ф10
   Exit
EndFunc

$Color = 0xFDFDC5 ;Это цвет
$Dip_Col = 50 ;Допустимое несовпадение цвета от указанного 

while 1
$Variable = PixelSearch( 6, 57, 1276, 957, $Color, $Dip_Col) ; ищет пиксель
	If IsArray($Variable) = True Then
		mouseclick("left", $Variable[0], $Variable [1])
	EndIf
wend
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 590
Репутация
938
Хелп бы читать иногда было бы неплохо...
Код:
$Color = 0xFDFDC5 ;Это цвет
$Dip_Col = 50 ;Допустимое несовпадение цвета от указанного (допустимое значение от 0 - точное, до 255) - ПОГРЕШНОСТЬ.
While 1
    $Rezult = PixelSearch( 6, 57, 1276, 957, $Color, $Dip_Col) ; ищет пиксель
    If Not @error Then MouseClick("left", $Rezult[0], $Rezult[1], 1, 10)
WEnd
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 590
Репутация
938
edward_freedom сказал(а):
нет смысла держать в цикле вот это:
Код:
$Color = 0xFDFDC5 ;Это цвет
$Dip_Col = 50

Оно лишь бессмысленно нагружает цикл увеличивая его длительность и при том не несет никакой практической ценности.

И к чему такие заумные проверки:
Код:
If IsArray($Variable) = True Then

Когда именно для этого есть макрос @error ?
 

edward_freedom

Осваивающий
Сообщения
200
Репутация
44
Belfigor
Я уже пожелел, что написал свой скрипт :wacko:
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 590
Репутация
938
Хотя при маленьких масштабах разница во времени не так уж и заметна, то при постоянном использовании лишняя нагрузка на код приводит к значительному замедлению работы приложения.
 

gvr

Новичок
Сообщения
3
Репутация
0
Извените пожалуйста... Я новенький..
Скажите, что и где нужно дописать чтобы остановить роботу скрипта?
 

edward_freedom

Осваивающий
Сообщения
200
Репутация
44
gvr
Выход по нажатию Ф10 :beer:


Код:
HotKeySet("{F10}","ExitApp")
Func ExitApp() ;выходим по нажатию Ф10
   Exit
EndFunc
 

gvr

Новичок
Сообщения
3
Репутация
0
И последний вопрос!
Что ето за цвет то такой "0xFDFDC5"? В какой системе вычеслен код цвета? Я пробовал писать "#6c6cd0" и просто "6c6cd0" но скрипт етот цвет не принимал...
 

edward_freedom

Осваивающий
Сообщения
200
Репутация
44
gvr
Программа идет в наборе с Autoit.
AutoIt Window Info
ну или вот
http://autoit-script.ru/index.php?topic=4579.0 :ok:
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
gvr сказал(а):
Что ето за цвет то такой "0xFDFDC5"? В какой системе вычеслен код цвета?
[box title=TitleBox]ЦВЕТ 0xFDFDC5[/box]
HEX. (Шестнадцатиричная)
http://ru.wikipedia.org/wiki/RGB
 

gvr

Новичок
Сообщения
3
Репутация
0
"0xFDFDC5" видеш здесь 8 символов! Ето не НЕХ!
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
Берем русскую справку AutoIt/Основные понятия/Типы данных
"Целые числа можно представлять в шестнадцатеричной записи, если использовать перед такими числами символы 0x, например, 0x409 или 0x4fff. В этом
случае число должно находиться в диапазоне 32-битов."

"0xFDFDC5"
0x => Указатель на то, что это значение хранится в HEX
FD=> 253 Красный
FD=> 253 Зеленый
C5=> 197 Синий

Попробуй это в Paint... там есть выбрать свой цвет и подставить эти значения.
 
Верх