Что нового

Нажатие клавишь если в данном пикселе данный цвет

vadiqwe

Новичок
Сообщения
15
Репутация
0
Версия AutoIT: 3

Описание:
Есть пиксель:

1.png


И если в данном пикселе появляется что то типа этого:

2.png


То скрипт нажимал кнопку "A"
Таких участков всего 6 с разными цветами и кнопками:
A,S,D,J,K,L

Пытался сделать сам, но не получилось.


Добавлено:
Сообщение автоматически объединено:

Пытался осуществить так:
Код:
While 1
    Opt('SendKeyDownDelay', 200)
    If PixelGetColor(570, 715) = '0x00FF00' Then Send('a') ;зелёный
    If PixelGetColor(621, 715) = '0xC1272D' Then Send('s') ;красный
    If PixelGetColor(672, 715) = '0xD9E021' Then Send('d');жёлтый
    If PixelGetColor(724, 715) = '0x0070BC' Then Send('j');синий
    If PixelGetColor(777, 715) = '0xF7931E' Then Send('k');оранжевый
    If PixelGetColor(830, 715) = '0x93278F' Then Send('l');фиолетовый
WEnd


Но либо жмёт слишком долго, или поздно.
А иногда вообще не жмёт. Когда больше 1 кнопки надо нажать вообще ничего не жмёт.
 

SemEMP

Знающий
Сообщения
42
Репутация
7
Я так понимаю это игра, игра браузерная? Ссылку бы не помешало...
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Попробуй так:
Код:
While 1
    Opt('SendKeyDownDelay', 200)
    If '0x' & Hex(PixelGetColor(570, 715), 6) = '0x00FF00' Then Send('a') ;зелёный
    If '0x' & Hex(PixelGetColor(621, 715), 6) = '0xC1272D' Then Send('s') ;красный
    If '0x' & Hex(PixelGetColor(672, 715), 6) = '0xD9E021' Then Send('d');жёлтый
    If '0x' & Hex(PixelGetColor(724, 715), 6) = '0x0070BC' Then Send('j');синий
    If '0x' & Hex(PixelGetColor(777, 715), 6) = '0xF7931E' Then Send('k');оранжевый
    If '0x' & Hex(PixelGetColor(830, 715), 6) = '0x93278F' Then Send('l');фиолетовый
WEnd
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Zaramot,
Поправьте.
Код:
If '0x' & Hex(;...


vadiqwe,
ИМХО, должно работать и так:
Код:
;...
If PixelGetColor(570, 715) = 0x00FF00 Then Send('a')
;...
 
Верх