Automation 扫描屏幕颜色,并使用autoit复制步骤

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

我有一个屏幕上有4个按钮的游戏, 我需要复制按钮的点击, 屏幕上有一些序列,计算机从每次点击1次开始,我需要复制点击。。。 点击1次后,增加到2次点击3次点击等。。。 我从这个代码开始,但我被卡住了。。。有人能告诉我继续的方向吗

    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)