1 (изменено: YrukZ, 2021-06-07 21:29:16)

Тема: AHK: AHK не видит цвет

В кратце проблема такая.
Сам бот написан как "Триггер". То есть прицел изначально белый, но когда наводишь на человека он становится красным, в этот момент если зажат LShift он должен нажимать на ЛКМ(выстрел). В целом все работает, но цвет в который красится прицел AHK просто не видит. При чем если поставить цвет красный(FFFF00) то его видит, тестил на красном квадрате в фотошопе, точно так же с цветом db4949 уже не работает, его бот просто не замечает. Может кто понял ошибку или что то такое, может можо заменить ImageSearch, или выбрать диапазон тонов цвета. В общем я уже запутался.

;Указать цвет срабатывания (Hex, RGB):
Color = 0xdb4949

;Авто-выстрел при удержании клавиши:
~LShift::
While GetKeyState("LShift", "P")
{
 PixelSearch,,, 800, 450, 800, 450, % Color,, RGB
 If !ErrorLevel
 {
  MouseClick
  ToolTip -Выстрел-,0,0
 }
 Else
  ToolTip, Не найден %Color% цвет,0,0
 Sleep, 500
}
ToolTip
Return

И еще может можно несколько цветов указать, так как там не 1 цвет а сразу несколько его оттенков или тонов.

2

Re: AHK: AHK не видит цвет

Попробуй увеличить площадь поиска

3

Re: AHK: AHK не видит цвет

Тут не площадь нужно увеличивать а понимать как код себя ведёт в тех или иный условиях. Чтобы было проще нужно читать справку.

Win10x64, AHK v1.1.37.01 (Unicode 64-bit) | AHK-Wiki | Переменные и выражения | RegEx101

4

Re: AHK: AHK не видит цвет

 PixelSearch,,, 800, 450, 800, 450, % Color, 10, RGB

Как вариант искать не точный цвет, а учитывать вариации. С цифрой надо пробовать какой вариант больше подходит. Прицел в игре может быть хоть немного прозрачным и от заднего фона будет зависить его тон.
Как сказано в документации:

PixelSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ColorID , Variation, Mode
Variation

A number between 0 and 255 (inclusive) to indicate the allowed number of shades of variation in either direction for the intensity of the red, green, and blue components of the color (can be an expression). For example, if 2 is specified and ColorID is 0x444444, any color from 0x424242 to 0x464646 will be considered a match. This parameter is helpful if the color sought is not always exactly the same shade. If you specify 255 shades of variation, all colors will match. The default is 0 shades.