Что нового

[Автоматизация] Отслеживать минимальную область в центре монитора

MAS

Новичок
Сообщения
10
Репутация
0
Всем привет, как можно отследить пиксель именно в центре монитора, в ручную получается не совсем точно. Для браузерной игры скрипт пишу, нужно чтоб реагировал когда точно навел на цвет, а не когда подвёл прицел к цели/цвету рядом.
Как можно решить проблему?
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
Можно скриншот формата bmp или png что именно вам нужно отследить ?
 
Автор
M

MAS

Новичок
Сообщения
10
Репутация
0
777.png

Вместо браузерной лучше на css покажу. Отслеживать цвет в центре прицела пытаюсь, но если минимальную область в ручную выделяю, то с прерыванием стреляет странно, если даже не отвожу прицел от цвета. Стрельба с дальнего расстояния будет точнее , если поможете с этой бедой разобраться ;)
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
я так понимаю проблема в том что у монитора нельзя найти центр, а то что только максимум 4 точки ? ( Это и будет центром )


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

Вот так можно найти центр на мониторе:
Код:
$X = (@DesktopWidth / 2)
$Y = (@DesktopHeight / 2)

ConsoleWrite($X & @CRLF)
ConsoleWrite($Y & @CRLF)



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

Если брать на примере CS то я бы сделал так:
Код:
; Вариант 1

$WGP = WinGetPos("Counter-Strice Source");

$offsetX = 1;
$offsetY = 1;

$color = 0xFF0000;

$X = ($WGP[0] + ($WGP[2] / 2) + $offsetX);
$Y = ($WGP[1] + ($WGP[3] / 2) + $offsetY);

While 1
   if PixelGetColor($X, $Y) = $color Then
	  ;// Действие
   EndIf
WEnd

; Вариант 2

$handle = WinGetHandle("Counter-Strice Source");

$WGP = WinGetPos("Counter-Strice Source");

$X = (($WGP[2] / 2) + $offsetX);
$Y = (($WGP[3] / 2) + $offsetY);

While 1
   if PixelGetColor($X, $Y, $handle) = $color Then
	  ;// Действие
   EndIf
WEnd
 
Автор
M

MAS

Новичок
Сообщения
10
Репутация
0
действие MouseClick("LEFT")
но стреляет через раз, иногда не реагирует, странно
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
MAS сказал(а):
действие MouseClick("LEFT")
но стреляет через раз, иногда не реагирует, странно
Для начало необходимо разобраться в чем именно проблема, в эмулировании или нахождении цвета, поставите на действие ConsoleWrite("Click" & @CRLF)
 
Верх