|
You last visited: Today at 16:16
Advertisement
While Schleifen parallel?
Discussion on While Schleifen parallel? within the AutoIt forum part of the Coders Den category.
02/23/2012, 20:20
|
#1
|
elite*gold: 0
Join Date: Feb 2012
Posts: 270
Received Thanks: 33
|
While Schleifen parallel?
nabend leute!
ich beschäftige mich seit wenigen Stunden mit AutoIt hauptsächlich um mir erstmal selbst nen Bot zu basteln für Swtor.
nun meine Frage zu diesem Script hier ist, wie schaff ich es das er nach der ersten While Schleife die 2te macht? bzw. die letzte sollte immer (falls "true") vor den 2 starten.
hier das script:
Code:
WinActive ("Star Wars: The Old Republic")
While 1
$qyzen = PixelSearch (239,423, 270,450, 0x8E9EA2)
if IsArray($qyzen) = True Then
MouseMove($qyzen [0], $qyzen [1], 1)
sleep (500)
MouseClick($qyzen)
sleep (1000)
MouseClick ("left", 979,350)
sleep (1000)
MouseClick ("left", 1144,759)
EndIf
WEnd
While 1
$tharan = PixelSearch (241,502, 271,533, 0x99A99A)
if IsArray($tharan) = True Then
MouseMove($tharan [0], $tharan [1], 1)
sleep (500)
MouseClick($tharan)
sleep (1000)
MouseClick ("left", 996,356)
sleep (1000)
MouseClick ("left", 1110,759)
EndIf
WEnd
While 1
$variable = PixelSearch ( 901, 546, 1195, 716, 0x99D8F2)
if IsArray($variable) = True Then
MouseMove($variable [0], $variable [1], 1)
sleep (500)
Mouseclick($variable)
EndIf
WEnd
Func _Exit ()
Exit
EndFunc
|
|
|
02/23/2012, 20:28
|
#2
|
elite*gold: 0
Join Date: May 2011
Posts: 275
Received Thanks: 49
|
Mit der Funktion ExitLoop tritts du aus einer Schleife aus
|
|
|
02/23/2012, 20:31
|
#3
|
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
|
Du kannst keine Schleifen parallel zueinander benutzen. Es gibt aber eine Funktion mit der ähnliches möglich ist:
|
|
|
02/23/2012, 20:33
|
#4
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
Einfach alles in 1 While-Schleife?
|
|
|
02/23/2012, 20:37
|
#5
|
elite*gold: 26
Join Date: Jan 2012
Posts: 3,474
Received Thanks: 18,847
|
Da Multithreading mit AutoIt nicht geht wirst du wohl wie jacky919 vorgeschlagen hat, auf Alternativen zurückgreifen müssen.
|
|
|
02/23/2012, 20:39
|
#6
|
elite*gold: 0
Join Date: Apr 2009
Posts: 85
Received Thanks: 7
|
Ich hoffe ich verstehe dich nicht falsch, aber du kannst der While-Schleife auch eine Bedingung geben, sodass sie nur weitergeführt wird wenn etwas bestimmtes ist bzw nicht ist.
|
|
|
02/23/2012, 21:18
|
#7
|
elite*gold: 0
Join Date: Feb 2012
Posts: 270
Received Thanks: 33
|
danke erstmals =)
habs jetzt mal so probiert:
da bekomm ich aber die Fehlermeldung: "Error: "Wend" statement with no matching "while" statement.
Code:
WinActive ("Star Wars: The Old Republic")
While 1
$variable = PixelSearch ( 901, 546, 1195, 716, 0x99D8F2)
if IsArray($variable) = True Then
MouseMove($variable [0], $variable [1], 1)
sleep (500)
Mouseclick($variable)
$qyzen = PixelSearch (239,423, 270,450, 0x8E9EA2)
if IsArray($qyzen) = True Then
MouseMove($qyzen [0], $qyzen [1], 1)
sleep (500)
MouseClick($qyzen)
sleep (1000)
MouseClick ("left", 979,350)
sleep (1000)
MouseClick ("left", 1144,759)
$tharan = PixelSearch (241,502, 271,533, 0x99A99A)
if IsArray($tharan) = True Then
MouseMove($tharan [0], $tharan [1], 1)
sleep (500)
MouseClick($tharan)
sleep (1000)
MouseClick ("left", 996,356)
sleep (1000)
MouseClick ("left", 1110,759)
EndIf
WEnd
Func _Exit ()
Exit
EndFunc
|
|
|
02/23/2012, 21:42
|
#8
|
elite*gold: 26
Join Date: Jan 2012
Posts: 3,474
Received Thanks: 18,847
|
Quote:
Originally Posted by ultrawayoflife
danke erstmals =)
habs jetzt mal so probiert:
da bekomm ich aber die Fehlermeldung: "Error: "Wend" statement with no matching "while" statement.
WinActive ("Star Wars: The Old Republic")
While 1
$variable = PixelSearch ( 901, 546, 1195, 716, 0x99D8F2)
if IsArray($variable) = True Then
MouseMove($variable [0], $variable [1], 1)
sleep (500)
Mouseclick($variable)
Endif ;vermutung
$qyzen = PixelSearch (239,423, 270,450, 0x8E9EA2)
if IsArray($qyzen) = True Then
MouseMove($qyzen [0], $qyzen [1], 1)
sleep (500)
MouseClick($qyzen)
sleep (1000)
MouseClick ("left", 979,350)
sleep (1000)
MouseClick ("left", 1144,759)
Endif ;vermutung
$tharan = PixelSearch (241,502, 271,533, 0x99A99A)
if IsArray($tharan) = True Then
MouseMove($tharan [0], $tharan [1], 1)
sleep (500)
MouseClick($tharan)
sleep (1000)
MouseClick ("left", 996,356)
sleep (1000)
MouseClick ("left", 1110,759)
EndIf
WEnd
Func _Exit ()
Exit
EndFunc
|
Du hast noch 2 if abfragen die nicht mit endif abgeschlossen sind. Hab sie mal rot markiert.
|
|
|
02/23/2012, 21:46
|
#9
|
elite*gold: 0
Join Date: Feb 2012
Posts: 270
Received Thanks: 33
|
ok also doch noch ein Problem!
wie krieg ich es hin das er die abfrage des If "variable" immer vor "qyzen" und "tharan" vorzieht?
problem ist nämlich das oft "variable" und "qyzen" od. "tharan" gleichzeitig "true" werden und das Script sollte dann automatisch die If-Schleife "variable" als erstes abarbeiten!
wie is das möglich?
|
|
|
02/24/2012, 15:25
|
#10
|
elite*gold: 574
Join Date: Nov 2010
Posts: 2,498
Received Thanks: 726
|
Quote:
Originally Posted by ultrawayoflife
ok also doch noch ein Problem!
wie krieg ich es hin das er die abfrage des If "variable" immer vor "qyzen" und "tharan" vorzieht?
problem ist nämlich das oft "variable" und "qyzen" od. "tharan" gleichzeitig "true" werden und das Script sollte dann automatisch die If-Schleife "variable" als erstes abarbeiten!
wie is das möglich?
|
Code:
WinActive ("Star Wars: The Old Republic")
While 1
$variable = PixelSearch ( 901, 546, 1195, 716, 0x99D8F2)
$tharan = PixelSearch (241,502, 271,533, 0x99A99A)
$qyzen = PixelSearch (239,423, 270,450, 0x8E9EA2)
if IsArray($variable) = True Then
MouseMove($variable [0], $variable [1], 1)
sleep (500)
Mouseclick($variable)
elseif IsArray($qyzen) = True Then
MouseMove($qyzen [0], $qyzen [1], 1)
sleep (500)
MouseClick($qyzen)
sleep (1000)
MouseClick ("left", 979,350)
sleep (1000)
MouseClick ("left", 1144,759)
elseif IsArray($tharan) = True Then
MouseMove($tharan [0], $tharan [1], 1)
sleep (500)
MouseClick($tharan)
sleep (1000)
MouseClick ("left", 996,356)
sleep (1000)
MouseClick ("left", 1110,759)
EndIf
WEnd
Func _Exit ()
Exit
EndFunc
Guck dich mal in der Tutorial Sektion an,
dort gibts viele antworten auf deine
Fragen.
|
|
|
|
Similar Threads
|
Parallel Kingdom
10/14/2011 - Browsergames - 0 Replies
Servus , schon mal jemand was über das Spiel gehört.
Gibts auf Handys und wurde jetzt als Browsergame umgesetzt.
Hab da schon ein wenig rumgebastelt und einige erfolge erzielt.
Problem ist nur, die Arbeiten mit Googlemaps.
Sie brauchen den Standort im Spiel um zu wissen wo man im game Startet.
Das dumme is nur wenn mann über einen Proxy einen Account erstellen will geht es nicht weil er keine Position findet wo der Char starten kann.
Gibts es Proxys die nicht Anonym sind ?
|
# PAE parallel zu IPFW #
12/26/2010 - Metin2 Private Server - 0 Replies
So ich hab hier ein technisches Problem.
Ich hab jetzt nun beide Kernel Kompiliert
PAE und IPFW.
Nund hab ich ein Problem.
Entweder ich installier den PAE dan geht die Firewall nicht mehr
Bei nur PAE und ipfw list
|
parallel+serielle schaltung HELP ME PLS
10/30/2010 - Main - 2 Replies
kann mir jm die parallel+serielle schaltung pls erklären???
wär euch sehr dankbar, denn ich kenne mich so gut wie nicht aus
|
mac x using parallel desktop
04/09/2007 - Conquer Online 2 - 0 Replies
can any1 help me um im using mac x using parallel desktop so i can run windows when i finish install i try to run conqueronline but it give me this error Conquer.exe has encountered a problem and needs to close.we are sorry for the inconvenience not only that i only open one client can any1 help me
<hr>Append on Apr 10 2007, 01:22<hr> any1 can help me?
<hr>Append on Apr 10 2007, 03:34<hr> pls! help me i really want to play using mac cuz i sold my pc thats why i need ur advise any1 can...
|
[Frage] 2 Ragnarokfesnter parallel???
03/05/2005 - Ragnarok Online - 12 Replies
Hallo Leute,
erstmal möchte ich euch wegen diesem Forum gratulieren, ist echt geil ^^. Jetzt zu meiner Frage. Ist es möglich, Ragnarok 2 mal geichzeitig mit verschiedenen Account paralell laufen zu lassen? Würde mich auf eine Antwort sehr freuen.
MfG
Annonym ^^
|
All times are GMT +2. The time now is 16:16.
|
|