Войти

Показать полную графическую версию : Работа с окном браузера


cillme
23-12-2012, 20:10
Собственно говоря идея состоит в автоматизации рутинной работы в онлайн игре. Программа пишется чисто ради любопытства и "жалких" попыток освоения программы AutoIt.
Итого у нас имеется:
4 кнопки передвижения, имеющих определенный цвет, который отслеживается программой и нажимается в рандомном порядке. - Назовем их кнопки B
1 кнопка того же цвета, имеющая более высокий приоритет , нежели предыдущие 4. (появляется рандомно) - назовем ее кнопка A

Пытался самостоятельно состряпать код, читая темки и вот, что вышло:

HotKeySet("{ESC}", "Terminate")

; Цвета, которые мы ищем
Dim $aArray[4]
$aArray[0]=0xFFF9CA

While 1
For $element In $aArray
$coord = PixelSearch( 282, 411, 294, 424, $element ) ; Кнопка с наивысшим приоритетом
If Not @error Then
MouseClick("Left", $coord[0] , $coord[1])
EndIf
Next
WEnd
;Следующие кнопки должны нажиматься рандомно.

While 2
For $element In $aArray
$coord = PixelSearch( 513, 161, 526, 174, $element )
If Not @error Then
MouseClick("Left", $coord[0] , $coord[1])
EndIf
Next
WEnd

While 3
For $element In $aArray
$coord = PixelSearch( 488, 184, 502, 196, $element )
If Not @error Then
MouseClick("Left", $coord[0] , $coord[1])
EndIf
Next
WEnd

While 4
For $element In $aArray
$coord = PixelSearch( 535, 184, 550, 196, $element )
If Not @error Then
MouseClick("Left", $coord[0] , $coord[1])
EndIf
Next
WEnd

While 5
For $element In $aArray
$coord = PixelSearch( 513, 208, 525, 221, $element )
If Not @error Then
MouseClick("Left", $coord[0] , $coord[1])
EndIf
next
WEnd

Func Terminate()
Exit 0
EndFunc

В итоге:
Если кнопка A есть:
Программа нажимает на кнопку и цикл останавливается.
Если кнопки A нет:
Программа не нажимает на кнопки B




© OSzone.net 2001-2012