[AutoIt] Hilfe bei Script

08/26/2010 16:46 scansi#1
Hi Leute,

mein Script sucht nur nach einem wert ("x.png"). Ich habe gedacht, ich kann das mit Arrays lösen, um einer Variable mehrere Werte zuzuweisen, die alle überprüft werden. Habs aber iwie nicht hinbekommen. Kann das funktionieren oder wie muss ich das machen?

hier mein aktueller Code:

Code:
#RequireAdmin
#include <ImageSearch.au3>

Global $fenster
Global $active = 0

HotKeySet ("{PGUP}","starten")
HotKeySet ("{PGDN}","beenden")

$x1=0
$x2=0
$x3=0
$y1=0
$y2=0
$y3=0

While 1
sleep(1)
WEnd

Func starten()
While 1

$result1 = _ImageSearch("x.png",1,$x1,$y1,150)
If $result1 = 1 Then
MouseClick ("LEFT",$x1,$y1)

sleep (100)

$result2 = _ImageSearch ("xx.png",1,$x2,$y2,150)
If $result2 = 1 Then
MouseClick ("LEFT",$x2,$y2)

sleep (100)

EndIf

Else
$result3 = _ImageSearch("xxx.png",1,$x3,$y3,150)
If $result3 = 1 Then
MouseClick ("LEFT",$x3,$y3)
EndIf

EndIf
WEnd
EndFunc


Func beenden()
Exit 1
EndFunc
08/26/2010 17:26 Shadow992#2
Quote:
Originally Posted by scansi View Post
Hi Leute,

mein Script sucht nur nach einem wert ("x.png"). Ich habe gedacht, ich kann das mit Arrays lösen, um einer Variable mehrere Werte zuzuweisen, die alle überprüft werden. Habs aber iwie nicht hinbekommen. Kann das funktionieren oder wie muss ich das machen?

hier mein aktueller Code:

Code:
#RequireAdmin
#include <ImageSearch.au3>

Global $fenster
Global $active = 0

HotKeySet ("{PGUP}","starten")
HotKeySet ("{PGDN}","beenden")

$x1=0
$x2=0
$x3=0
$y1=0
$y2=0
$y3=0

While 1
sleep(1)
WEnd

Func starten()
While 1

$result1 = _ImageSearch("x.png",1,$x1,$y1,150)
If $result1 = 1 Then
MouseClick ("LEFT",$x1,$y1)

sleep (100)

$result2 = _ImageSearch ("xx.png",1,$x2,$y2,150)
If $result2 = 1 Then
MouseClick ("LEFT",$x2,$y2)

sleep (100)

EndIf

Else
$result3 = _ImageSearch("xxx.png",1,$x3,$y3,150)
If $result3 = 1 Then
MouseClick ("LEFT",$x3,$y3)
EndIf

EndIf
WEnd
EndFunc


Func beenden()
Exit 1
EndFunc
Ich bin mir zwar nicht sicher, ob du es so gemeint hast, aber schaus dir einfach mal an.
PHP Code:
#RequireAdmin
#include <ImageSearch.au3>

Global $fenster
Global $active 0

HotKeySet
("{PGUP}""starten")
HotKeySet("{PGDN}""beenden")

$x1 0
$y1 
0

global $pics[20][3]
$pics[0][0]="x1.png"
$pics[0][1]="xx1.png"
$pics[0][2]="xxx1.png"
$pics[1][0]="x2.png"
$pics[1][1]="xx2.png"
$pics[1][2]="xxx2.png"
$pics[2][0]="x3.png"
$pics[2][1]="xx3.png"
$pics[2][2]="xxx3.png"
;~ ...

While 
1
    Sleep
(1)
WEnd

Func starten
()
    While 
1
    
for $i=0 To UBound($pics)-1
        $result1 
_ImageSearch($pics[$i][0], 1$x1$y1150)
        If 
$result1 1 Then
            MouseClick
("LEFT"$x1$y1)

            
Sleep(100)

            
$result1 _ImageSearch($pics[$i][1], 1$x1$y1150)
            If 
$result1 1 Then
                MouseClick
("LEFT"$x1$y1)

                
Sleep(100)

            EndIf

        Else
            
$result1 _ImageSearch($pics[$i][2], 1$x1$y1150)
            If 
$result1 1 Then
                MouseClick
("LEFT"$x1$y1)
            EndIf

        EndIf
    
Next

    WEnd
EndFunc   
;==>starten


Func beenden
()
    Exit 
1
EndFunc   
;==>beenden