Hilfe bei Gamebot

07/06/2014 10:18 Hypotakt#1
Guten Abend alle miteinander,

Ich habe grade mal versucht einen kleinen Klickbot zu schreiben, welcher größtenteils nur Pixelabfrage durchführt und danach dann irgendwo hinklickt. Eine große Effizienz hat er noch nicht, aber daran arbeite ich dann noch.

Allerdings hat er das Problem, das Sobald die erste Pixelabfrage durchgeführt ist, hängt das Programm auf einmal und klickt nicht.

Hier einmal der Quellcode:



sleep(3000)
WinActivate("BlueStacks App Player for Windows (beta-1)")
WinMove("BlueStacks App Player for Windows (beta-1)","",0,0,1200,800)

While 1

$col=PixelGetColor(934,499)
while Hex($col, 6)<>"D7AE53"
WEnd

MouseMove(934,499,1)
sleep(50)
MouseClick("Left")
sleep(50)
MouseClick("Left")

$col_a=Hex(PixelGetColor(857,389),6)
while $col_a<>"D61847"
WEnd

Sleep(5000)
MouseMove(420,330,1)
sleep(50)
MouseClick("Left")
sleep(50)
MouseClick("Left")
Sleep(2000)
MouseMove(420,330,1)
sleep(50)
MouseClick("Left")
sleep(50)
MouseClick("Left")

$col_b=Hex(PixelGetColor(767,564),6)
while $col_b<>"25180E"
WEnd

Sleep(250)
MouseMove(595,555,1)
sleep(50)
MouseClick("Left")
sleep(50)
MouseClick("Left")

$col_c=Hex(PixelGetColor(380,411),6)
while $col_c)<>"CCBB84"
WEnd

Sleep(250)
MouseMove(380,411,1)
sleep(50)
MouseClick("Left")
sleep(50)
MouseClick("Left")

WEnd




Und das Problem liegt bei folgender Stelle:



$col_a=Hex(PixelGetColor(857,389),6)
while $col_a<>"D61847"
WEnd




Ich befürchte das der Bot in dem Loop hängen bleibt, aber ich weis nicht genau. Bitte alle Ideen runter schreiben :D

LG Hypotakt
07/06/2014 13:01 DeluxeDose#2
Hi,

Problem schon mal richtig erkannt, dein Bot springt in die 1. While-Schleife (while 1) und prüft dann die Farbe $col = ... (1 mal) und springt, wenn $col ungleich der gesuchten Farbe ist, in die 2. While-Schleife, wo dann nichts mehr passiert. Möglichkeit 1, du prüfst in der While-Schleife die Farbe und springst raus, wenn du sie gefunden hast. Möglichkeit 2, du prüfst einfach alle deine Farben in einer While-Schleife und machst dann, wenn diese gefunden wurden die Klicks. Ich habs dir mal als Beispiel geschrieben.

07/06/2014 16:17 Hypotakt#3
Habe Dank, mit "case" funktioniert es jetzt super!