Gibts iwas mit dem ich 3 verschiedene Orte (Kordinaten) die ganze Zeit checken kann und sobald sie sich verändern(farblich) sie eine Function ausführen ?
$checksum0 = Pixelchecksum(links, oben, rechts, unten) $checksum1 = Pixelchecksum(links, oben, rechts, unten) $checksum2 = Pixelchecksum(links, oben, rechts, unten) ;erstellt sozusagen einen screenshot von diesem bereich und speichert ihn in die variable
While $checksum0 = Pixelchecksum(links, oben, rechts, unten) $checksum1 = Pixelchecksum(links, oben, rechts, unten) $checksum2 = Pixelchecksum(links, oben, rechts, unten) ;checkt ob der screenshot und das momentane bild übereinstimmen Sleep(50) WEnd
While 1 If $checksum0 = verändert Then func()
Elseif $checksum1 = verändert then func1()
Elseif $checksum2 = verändert then func2()
Else Then sleep(10)
Endif Wend
Funk's ....
func0 blabla
func1 blabla
func2 blabla
wie mach ich das jetzt , dass wenn $checksum sich verändert hat es eine Funktion ausführt ? mit einer If und Elseif ?
kommt eigendlich nicht sonderlich drauf an , einfach sollt der Bot sobald sich ein Bereich/Pixel ändert ne Taste drücken und so halt wenn wieder der Pixel "zurück" ist die Taste aufhört zu drücken
If PixelGetColor(795,484) = Not $PX1 Then
Funktion1()
EndIf
If PixelGetColor(835,484) = Not $PX2 Then
Funktion2()
EndIf
If PixelGetColor(875,484) = Not $PX3 Then
Funktion3()
EndIf
WEnd
warum geht mir das mit dem "Not" nicht ?
hab immer so Probleme beim Not irgendwas mach ich da einfach Falsch -.-
Denke es muss "Not =" oder nur "Not" heißen.
Dein Code ergibt aber keinen Sinn, da innerhalb weniger MS der gleiche bereich 2 mal überprüft wird.
du musst die ersten 3 Abfragen vor die Schleife machen.
Das wegen der Abfrage ist eigentlich nicht so wichtig (weil verändert sich nicht nach den ersten Ms), aber vielen Dank fürs mitteilen
ehm das mit
If PixelGetColor(795,484) = Not= $PX1 Then
Funktion1()
EndIf
Funktioniert leider nicht bez. Error
erstes "=" weglassen oder einfach "<>"
Zu der Schleife. Vor der If abfrage wird ja nicht angehalten. Also klappt es nicht denn dein Script
Guck die Wand an, sieht das die Wand rot ist --> Schaut die Wand 1 ms später nochmal an --> sie ist immer noch gleich. Und das ganze von vorne
$PX1 = PixelGetColor(795, 484)
$PX2 = PixelGetColor(835, 484)
$PX3 = PixelGetColor(875, 484)
While 1
If PixelGetColor(795, 484) = Not $PX1 Then
Sleep(10)
EndIf
If PixelGetColor(835, 484) = Not $PX2 Then
Sleep(10)
EndIf
If PixelGetColor(875, 484) = Not $PX3 Then
Sleep(10)
EndIf
Sleep(250);DontFucktheCPU
WEnd