Automation 扫描屏幕颜色,并使用autoit复制步骤
我有一个屏幕上有4个按钮的游戏, 我需要复制按钮的点击, 屏幕上有一些序列,计算机从每次点击1次开始,我需要复制点击。。。 点击1次后,增加到2次点击3次点击等。。。 我从这个代码开始,但我被卡住了。。。有人能告诉我继续的方向吗Automation 扫描屏幕颜色,并使用autoit复制步骤,automation,autoit,Automation,Autoit,我有一个屏幕上有4个按钮的游戏, 我需要复制按钮的点击, 屏幕上有一些序列,计算机从每次点击1次开始,我需要复制点击。。。 点击1次后,增加到2次点击3次点击等。。。 我从这个代码开始,但我被卡住了。。。有人能告诉我继续的方向吗 HotKeySet("{F1}", loco) #include <Array.au3> Global $Coords Global $Array[0] Local $Green = 0xFDEA68 ;Clicked Loca
HotKeySet("{F1}", loco)
#include <Array.au3>
Global $Coords
Global $Array[0]
Local $Green = 0xFDEA68 ;Clicked
Local $Gray = 0xF5F2F0;Clicked
Local $RED = 0xD12321A;Clicked
Local $Blue = 0x55ECD1;Clicked
Local $BackGreen = 0xE1183C;Click released
Local $BackGray = 0xF0F4F9;Click released
Local $BackRed = 0x21968F;Click released
Local $BackBlue = 0x66212C;Click released
While 1
Do
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $Green)
If Not(@Error) Then
Sleep(100)
While 1
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $BackGreen)
If Not(@Error) Then
_ArrayAdd($Array,"Green")
ExitLoop
EndIf
WEnd
EndIf
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $Gray)
If Not(@Error) Then
Sleep(100)
While 1
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $BackGray)
If Not(@Error) Then
_ArrayAdd($Array,"Gray")
ExitLoop
EndIf
WEnd
EndIf
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $RED)
If Not(@Error) Then
Sleep(100)
While 1
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $BackRed)
If Not(@Error) Then
_ArrayAdd($Array,"Red")
ExitLoop
EndIf
WEnd
EndIf
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $Blue)
If Not(@Error) Then
Sleep(100)
While 1
$Coords = PixelSearch(0, 0, @DesktopWidth - 1, @DesktopHeight - 1, $BackBlue)
If Not(@Error) Then
_ArrayAdd($Array,"Blue")
ExitLoop
EndIf
WEnd
EndIf
Sleep(1000)
Until StringLen($Coords) > 0
Local $ArrLen = UBound($Array)
For $i = 0 To $ArrLen - 1
ConsoleWrite("Color: " & $Array[$i] & @CRLF)
Next
;_ArrayDelete($Array,0:)
; MouseClick("Left",$Coords[0],$Coords[1],1,5)
Sleep(1000)
WEnd
Func loco()
Exit 12
EndFunc
热键集(“{F1}”,本地)
#包括
全球$Coords
全局$数组[0]
本地$Green=0xFDEA68;点击
本地$Gray=0xF5F2F0;点击
本地$RED=0xD12321A;点击
本地$Blue=0x55ECD1;点击
本地$BackGreen=0xE1183C;点击发布
本地$BackGray=0xF0F4F9;点击发布
本地$BackRed=0x21968F;点击发布
本地$BackBlue=0x66212C;点击发布
而1
做
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$Green)
如果不是(@Error),则
睡眠(100)
而1
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$BackGreen)
如果不是(@Error),则
_ArrayAdd($Array,“绿色”)
ExitLoop
恩迪夫
温德
恩迪夫
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$Gray)
如果不是(@Error),则
睡眠(100)
而1
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$BackGray)
如果不是(@Error),则
_ArrayAdd($数组,“灰色”)
ExitLoop
恩迪夫
温德
恩迪夫
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$RED)
如果不是(@Error),则
睡眠(100)
而1
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$BackRed)
如果不是(@Error),则
_ArrayAdd($Array,“Red”)
ExitLoop
恩迪夫
温德
恩迪夫
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$Blue)
如果不是(@Error),则
睡眠(100)
而1
$Coords=PixelSearch(0,0,@DesktopWidth-1,@DesktopHeight-1,$BackBlue)
如果不是(@Error),则
_ArrayAdd($Array,“Blue”)
ExitLoop
恩迪夫
温德
恩迪夫
睡眠(1000)
直到StringLen($Coords)>0
本地$ArrLen=UBound($Array)
对于$i=0到$ArrLen-1
控制台写入(“颜色:&$Array[$i]&@CRLF)
下一个
;_ArrayDelete($Array,0:)
; 鼠标单击(“左”,$Coords[0],$Coords[1],1,5)
睡眠(1000)
温德
Func loco()
12号出口
EndFunc
考虑我们不能复制您的问题,因为我们没有那个游戏。所以你必须包括我们需要帮助你的所有信息。特别是:什么不起作用?以及它如何不起作用(期望结果与实际结果)。很多我们无法运行的代码都没有帮助。如果有四个按钮(假设它们的位置是固定的),在整个屏幕上搜索像素似乎效率很低。考虑<代码> PixelGutoLoope<代码>,甚至可能<代码>切换PixelGETCURE($x1,$x2)