1 (изменено: XiliX, 2012-07-28 14:34:16)

Тема: AHK: PixelGetColor

Подскажите как сделать
чтоб PixelGetColor срабатывал при условии если в 2 разных местах разные цвета
то есть скрипт срабатывает при условии 1 совпадения(простой пример)
PixelGetColor, color, 1502, 13   
if color = 0xFFFFFF
MouseClick, left,  833, 627

а как сделать чтоб работал при нахождении только 2 разных указанных цветов в разных точках



Например
в точке 10,10 цвет FFFFFF
в точке 12,12 цвет F12345
скрипт нажал мышкой на координаты 1024,1000

а если
в точке 10,10 цвет 23FF15
в точке 12,12 цвет F12345
повтор сканирования пикселей на экране

2 (изменено: creature.ws, 2012-07-28 15:42:55)

Re: AHK: PixelGetColor

If, Loop.

Loop {
    PixelGetColor, color1, 10,10
    PixelGetColor, color2, 12,12

    if (color1 = 0x23FF15 && color2 = 0xF12345) {
        Sleep 100
        continue
    }

    Else if (color1 = 0xFFFFFF && color2 = 0xF12345) {
        Click 1024,1000
        break
    }
}

3

Re: AHK: PixelGetColor

Спасибо

4

Re: AHK: PixelGetColor

Я так понимаю, при ложности обоих условий все равно будет повторяться сканирование. Автору же, видимо, нужно повторное сканирование только при истинности первого.


Loop 
{
PixelGetColor, color1, 12, 12
If (color1 <> 0xF12345)
        Break
Else
	{
	PixelGetColor, color2, 10, 10
	If (color2 = 0xFFFFFF)
	        {
		Click 1024, 1000
	        Break
		}
	Else If (color2 <> 0x23FF15)
	        Break
	sleep 100
	}
}
BIG BROTHER IS WATCHING YOU.