|
You last visited: Today at 17:22
Advertisement
Was ist hier falsch ????
Discussion on Was ist hier falsch ???? within the AutoIt forum part of the Coders Den category.
09/12/2010, 22:27
|
#1
|
elite*gold: 0
Join Date: Sep 2010
Posts: 8
Received Thanks: 0
|
Was ist hier falsch ????
dieses kleine script soll nichts weiter als einen zeitbalken überwachen.
der balken ist erst braun und färbt sich allmählich von links nach rechts rot.
nun will ich einen pixel am ende des balkens überwachen, und sobald er sich umfärbt die nächsten schritte abarbeiten.
For $i=1 to 2000
sleep (2000)
MouseClick("left",405,379,1, sleep (2000))
$Pixel = 0x572A11
While $Pixel = 0x572A11
$Pixel = PixelGetColor (747,700)
Sleep (3000)
Wend
sleep (10000)
MouseClick("left",413,439,1, sleep (2000))
MouseClick("left",852,455,1, sleep (2000))
MouseClick("left",644,722,1, sleep (2000))
$Pixel1 = 0x592B13
While $Pixel1 = 0x592B13
$Pixel1 = PixelGetColor (1028,690)
Sleep (3000)
WEnd
sleep (10000)
MouseClick("left",794,781,1, sleep (2000))
sleep (17000)
MouseClick("left",818,807,1, sleep (2000))
MouseClick("left",419,522,1, sleep (2000))
MouseClick("left",679,730,1, sleep (2000))
MouseClick("left",774,692,1, sleep (2000))
MouseClick("left",972,681,1, sleep (2000))
next
es gibt dann nochmals einen zeitbalken der genauso überwacht werden soll.
leider funktioniert es aber nicht ! ich habe sehr oft geprüft ob der pixel an der entsprechenden koordinate auch mit der richtigen farbe angegeben ist.
es ist immer der selbe pixel mit der selben farbe.
|
|
|
09/12/2010, 23:10
|
#2
|
elite*gold: 0
Join Date: Feb 2009
Posts: 542
Received Thanks: 112
|
mach das doch mit einer if schleife , bsp code :
PHP Code:
HotKeySet("{F1}","_a") HotKeySet("{F2}","_beenden")
while 1 Sleep(100) WEnd
Func _a() while 1
$a =PixelGetColor(642,545) if $a <> 0xFFFFFF then MsgBox(0,"","") ;statt der msgbox, deine nächste funktion
WEnd endfunc
Func _beenden()
Exit
Endfunc
oda hab ichs falsch verstanden?
|
|
|
09/13/2010, 09:07
|
#3
|
elite*gold: 0
Join Date: Sep 2009
Posts: 445
Received Thanks: 286
|
Der erst Fehler, der mir auffällt ist eig ein logischer Fehler:
(man betrachte die vorletzte Zeile;D)
PHP Code:
For $i=1 to 2000 sleep (2000) MouseClick("left",405,379,1, sleep (2000)) $Pixel = 0x572A11 While $Pixel = 0x572A11 $Pixel = PixelGetColor (747,700) Sleep (3000) Wend sleep (10000) MouseClick("left",413,439,1, sleep (2000)) MouseClick("left",852,455,1, sleep (2000)) MouseClick("left",644,722,1, sleep (2000)) $Pixel1 = 0x592B13 While $Pixel1 = 0x592B13 $Pixel1 = PixelGetColor (1028,690) Sleep (3000) WEnd sleep (10000) MouseClick("left",794,781,1, sleep (2000)) sleep (17000) MouseClick("left",818,807,1, sleep (2000)) MouseClick("left",419,522,1, sleep (2000)) MouseClick("left",679,730,1, sleep (2000)) MouseClick("left",774,692,1, sleep (2000)) MouseClick("left",972,681,1, sleep (2000)) $i=$i+1 next
|
|
|
09/13/2010, 10:17
|
#4
|
elite*gold: 0
Join Date: Feb 2010
Posts: 194
Received Thanks: 176
|
oder eben
PHP Code:
For $i=1 to 2000 Step +1 .. .. next
|
|
|
09/13/2010, 13:17
|
#5
|
elite*gold: 0
Join Date: Sep 2010
Posts: 8
Received Thanks: 0
|
zunächst danke für eure antworten !
@maxi39 es gibt sicher viele, und mit den möglichkeiten bei autoit auch schnellere lösungen. leider bin ich nicht so im thema.
wenn ich nicht völlig falsch liege müßte es doch auch mit meiner lösung gehen.
@banana&mysthik ok ich denke das hab ich begriffen. ich hab vergessen dem zähler zu sagen wann die schleife zuende ist und es jetzt bei zählstand 2 weitergehen soll.
is das korrekt ?
ich habe das jetzt korrigiert 
aber dennoch, der erste while befehl wird ausgeführt, der balken wird überwacht. ändert sich die farbe auf der pixelkoordinate arbeitet das script die weiteren befehle ab.
allerdings wird der zweite whilebefehl völlig ignoriert.
und ich kapiere einfach nicht warum.
|
|
|
09/13/2010, 15:45
|
#6
|
elite*gold: 0
Join Date: Apr 2008
Posts: 1,079
Received Thanks: 438
|
Code:
MouseClick("left",413,439,1, [COLOR="Red"]sleep (2000)[/COLOR])
Was soll das? Mach mal:
Code:
MouseClick("left",413,439,1)
sleep (2000)
Oder willst du dass die Maus 2s lang gedrückt wird?
Außerdem nimm mal anstatt der while...wend eine do...until Schleife. Sparst ne var und is übersichtlicher.
Code:
Do
Sleep (3000)
Until PixelGetColor (1028,690) = 0x592B13
|
|
|
09/14/2010, 01:17
|
#7
|
elite*gold: 0
Join Date: Sep 2010
Posts: 8
Received Thanks: 0
|
Moep das war die Topantwort ! 
Es lag tatsächlich daran das ich den Sleepbefehl direkt hinter die Befehle gesetzt hatte.
(Wusste gar nicht das das Maustaste gedrückt halten bedeutet)
Jetzt leuchtet es  Immer wenn das While ausgeführt wurde, war die Seite noch gar nicht aufgebaut. Demnach hatte der Pixel auch nicht die richtige Farbe.
Jetzt läuft das Script absolut einwandfrei !
Danke nochmals für euer Engagement 
Und besonders Dir Moep für diese Antwort.
Habe wieder 3 Dinge dazu gelernt dank euch
Machts gut bis dann mal !
|
|
|
 |
Similar Threads
|
Was ist hier dran falsch?
07/31/2010 - Metin2 Private Server - 4 Replies
Wenn ich ein neuen char erstelle, bekomm ich nur 1 schwert+0 un 200 rote pots ich hab die nummern von 0er eq+9 eingegeben
say_title ( "Willkommen" )
say ( "Willkommen auf dem Server BornToBeMt2" )
say ( "" )
say ( "Viel Spass!" )
say ( "" )
pc . give_exp2 ( )
set_quest_state ( "levelup" , "run" )
pc . change_money ( 1000000 )
pc . give_item2 ( "27003" , 200 )
|
Was ist hier falsch?
07/19/2010 - AutoIt - 27 Replies
Ich bins mal wieder mit einer neuen Frage,
was ist an diesem Code für den Bot falsch er startet irgendwie nichtmal..
Run ("metin2client.bin")
Sleep(500)
WinWaitActive ("XtremeMt2")
Sleep(500)
MouseMove (738,516)
Sleep(500)
MouseClick ("left",738,516)
Sleep(500)
|
was is hier falsch ?!
07/01/2010 - AutoIt - 8 Replies
ohh ?! hier kommt immer eine fehler meldung aber ich weis nicht was das heißt ?
hier is der script xD
$input3=GuiCtrlCreateInput("829, 39",65,97,65,20)
$input4=GuiCtrlCreateInput("674, 332",155,96,70,20)
$input5=GuiCtrlCreateInput("0xF9F5F8",1 13,134,61,20)
$PixelSearch = PixelSearch (GUICtrlRead ($input3),GUICtrlRead ($input4), GUICtrlRead ($input5), 0 )
|
Was ist hier dran falsch ?!
08/17/2009 - AutoIt - 2 Replies
Hey was hab ich hier dran falsch gemacht ?
|
war falsch hier
11/21/2006 - Private Server - 0 Replies
-.- sry war falsch hier
|
All times are GMT +1. The time now is 17:24.
|
|