[AutoIt] PixelGet gibt immer den Wert 0

04/16/2009 23:23 Dschingis#1
/edit: Topic sollte heißen 0x000000

Hi, ich versuch grade nen simplen Bot zu schreiben der einfach nur auf 8 verschiedene Farben im selben Bereich reagieren soll. Problem ist nur, er sagt mir *immer* der Bereich wäre schwarz...

Code:
$color = PixelGetColor(90, 50)

if $color = 0xff00ff then
        Send("3")
ElseIf $color = 0x00ff00 then
     Send("2")
usw
Wäre cool wenn mir da einer mal bei helfen könnte, geht auch schnell unter icq(685807) ;)


MfG
04/17/2009 04:20 __wadim#2
bist du sicher, dass dir da auch genau 0xff00ff/0x00ff00 angezeigt wird?
04/17/2009 12:07 N.E.O.#3
War das nicht so das man bei PixelGetColor ne Hex Zahll brauch? :rolleyes:

#€: Vielleicht hilft dir dieser Beitrag ja: [Only registered and activated users can see links. Click Here To Register...]
04/17/2009 12:21 Schauer#4
$checksum = PixelChecksum ( 7, 93, 810, 690 , 2 ) ; get Initial checksum
If $checksum = PixelChecksum ( 7, 93, 810, 690 , 2 ) Then
Searching()
EndIf

Func Searching()
$coord = PixelSearch ( 325, 175, 500, 270, 0xBD0000 , 1 , 1 )
If Not @error Then
.....
EndIf
EndFunc


Damit habe ich es in einem Bot gelöst, um Änderungen angezeigt zu bekommen und die Koordinaten dann weiter zu verarbeiten. Vielleicht Hilft Dir das ein wenig.




Wobei ich da gleich mal noch ne Frage obendrauf setzen möchte für die Autoit Cracks.
Wie kann ich einen Suchalgorythmus für ein Fenster Vereinfachen ohne die Checksumme abfragen zu lassen.
Denn wenn ich die Func Searching() erweitere auf mehrere Farbvarianten, dann dauert die Suche extrem lange. Und was viel einfacher wäre, auf einen Rotierenden Körper reagieren zu können, der schnell verschiedene Farben hintereinander annimmt.
Kann mir dabei evtl. jemand helfen ? ^^

LG Schauer
04/17/2009 12:35 Dschingis#5
Problem eingeschränkt: Er liest immer 0x00000 wenn ich WoW Fullscreen laufen lasse, Fenstermodus funktioniert
-> Problem teilweise gelöst ;)
04/17/2009 12:43 N.E.O.#6
Quote:
Originally Posted by Dschingis View Post
Problem eingeschränkt: Er liest immer 0x00000 wenn ich WoW Fullscreen laufen lasse, Fenstermodus funktioniert
-> Problem teilweise gelöst ;)
Mhm, vielleicht liegt das ja daran das der Pixel dann an einer anderen Koordinate sitzt -.-