Что нового

Найти первый пиксель и выполнить клик, найти второй и клик... ?

dwm18

Новичок
Сообщения
27
Репутация
0
Как сделать чтобы после нахождения первого пикселя, начал выполнятся второй поиск пикселя ?

Второй поиск, если нашел - то выполнить действия.... И перейти к поиску первого пикселя....

Второй поиск, если не нашел - то перейти к выполнению - первого поиска пикселя.

Первый пиксель находит нормально, а вот со вторым поиском - проблемка...


Код:
#include <AutoItConstants.au3>

$PixelExist = False
$MyClick = False
$SoundPlay = True
; Время выполнения дополнительных кликов
$Hour = 0
$Min = 0
While 1
    $coord = PixelSearch(2195, 111, 2211, 603, 0x008000, 50, 3) ; координаты области, цвет, допущение оттенка, шаг поиска
    If Not @error Then
        $Color = PixelGetColor($coord[0], $coord[1])
        $PixelExist = True
        For $i = 0 To 23 ;Количество циклов, за которое точка не должна потухнуть
            If $Color <> PixelGetColor($coord[0], $coord[1]) Then
                $PixelExist = False
                $SoundPlay = True
                ExitLoop
            EndIf
            Sleep(100) ;Небольшая пауза
        Next
        If $PixelExist And $SoundPlay Then
            $SoundPlay = False
            SoundPlay("C:\c\zvuk.mp3", 0)
			Sleep(100)
			MouseClick("left", 437, 250, 1, 0) ;нажатие на на кнопку
			Sleep(10000)
			
			PixelSearch(1186, 281, 1230, 307, 0xF76365, 50, 3) ; ПОИСК второго пикселя 
			If @error Then
			MouseClick("left", 1357, 99, 2, 0) ;нажатие на бегунок - возврат окна
			Sleep(100)
		  EndIf
		EndIf
    Else
        $SoundPlay = True
        $PixelExist = False
    EndIf
    Sleep(100)
    If @HOUR = $Hour And @MIN = $Min And Not $MyClick Then
        ;Устанавливаем флаг срабатывания по времени , что-бы исключить повторное срабатывание кликов несколько раз за минуту
        $MyClick = True
        ;Дальше перечисляете - куда кликать хотите
        MouseClick($MOUSE_CLICK_LEFT, 100, 500) ;Например клик левой кнопки мышки по координатам х=100, у=500
   EndIf
    ;Возвращаем флаг срабатывания по времени
    If @HOUR <> $Hour And @MIN <> $Min Then $MyClick = False
WEnd
 

mr.Gbabak

Осваивающий
Сообщения
252
Репутация
23
Код:
PixelSearch(1186, 281, 1230, 307, 0xF76365, 50, 3) ; ПОИСК второго пикселя 
            If Not @error Then ; если не нашел - то перейти к выполнению - первого поиска пикселя, иначе клик
            MouseClick("left", 1357, 99, 2, 0) ;нажатие на бегунок - возврат окна
            Sleep(100)
          EndIf


If Not @error Then
 
Верх