Ich scheiter jetzt schon :(

11/28/2009 22:39 freddy2001#16
Dann hab ich ja ganz gefailt xD
11/28/2009 22:40 HardCore.1337#17
Schau dir mal die ID´s an wie ich dirs gesagt hab
11/28/2009 22:41 kaiN_92#18
so habs oben ausgebessert.
Hab leider nie mit Memory und Autoit gearbeitet..daher eben Primitivlösung
11/28/2009 22:42 MoepMeep#19
Quote:
Originally Posted by kaiN_92 View Post
Code:
If $input2 = "1" Then
	Send("{ ENTER}")
ElseIf $input2 = "2" Then
	Send("{ RIGHT}")
	Send("{ ENTER}")
ElseIf $input2 = "3" Then
	Send("{ RIGHT}")
           Send("{ RIGHT}")
	Send("{ ENTER}")
Else
	MsgBox (0, "Facepalm!", "Kein Charakter angeben)
EndIf
lang her, dass ich was gemacht hab..aber so sollte die If-Funktion aussehen


edit: so send right noch drin.
vorrausetzung ist, dass du eben mit enter das login bestätigen kannst
Ne Zahl als string überprüfen? AutoIt ist schon komisch o.o
11/28/2009 22:43 kaiN_92#20
stimmt..fällt mir grad erst auf.

thx..ich hätte das jetzt ernsthaft so gemacht..grml.

Dann könnte man die charakterzahl auch in buchstaben angeben

1=eins
2=zwei
3=drei
5=fuenf
usw.
und eben dann oben "1" ersetzen, dann sollte es doch trotzdem hinahuen ,oder Moep ?
11/28/2009 22:54 freddy2001#21
So sieht doch schon viel besser aus :)
Macht jetzt alles, bis auf das es nach der Charauswahl Enter drückt

Code:
$input = InputBox ("LoginBot", "Dein Login Name?")
$input1 = InputBox ("LoginBot", "Dein Passwort?")
$input2 = InputBox ("LoginBot", "Welcher Charakter?")
WinWaitActive ("METIN2")
Send ($input)
Send ("{Enter}")
Send ($input1)
Send ("{Enter}")
sleep (10000)
If $input2 = "Eins" Then
	Send("{ ENTER}")
ElseIf $input2 = "Zwei" Then
	Send("{ RIGHT}")
	Send("{ ENTER}")
ElseIf $input2 = "Drei" Then
	Send("{ RIGHT}")
           Send("{ RIGHT}")
	Send("{ ENTER}")
ElseIf $input2 = "Vier" Then
	Send("{ RIGHT}")
		Send("{ RIGHT}")
		Send("{ RIGHT}")
		Send("{ ENTER}")
EndIf
Exit
11/28/2009 22:57 MoepMeep#22
Quote:
Originally Posted by kaiN_92 View Post
stimmt..fällt mir grad erst auf.

thx..ich hätte das jetzt ernsthaft so gemacht..grml.

Dann könnte man die charakterzahl auch in buchstaben angeben

1=eins
2=zwei
3=drei
5=fuenf
usw.
und eben dann oben "1" ersetzen, dann sollte es doch trotzdem hinahuen ,oder Moep ?
Das ganze macht man eigentlich mit Switch und Chars/Integern, aber keine Ahnung ob AutoIt überhaupt switch unterstützt.
11/28/2009 22:59 kaiN_92#23
normale würde ich case nehmen.

Hmm..das liegt eventuell daran, dass man warten muss bis der char im Bild ist.

Für einfach noch ein
sleep(2000)
oder so ein (also vor dem enter befehl)
11/28/2009 23:02 freddy2001#24
Habs versucht...klappt nicht :(
Und er geht auch nur 1x nach rechts. Hatte es nur mit Char 2 getestet :o
11/28/2009 23:03 HardCore.1337#25
Bau mal eine Sleep Funtkion ein und Probier dann nochmal.

PHP Code:
Send("{ RIGHT}")
        
Send("{ RIGHT}")
        
Send("{ RIGHT}")
                
sleep(2000) ; <<<------ Die Zeile mal rein machen!!!
        
Send("{ ENTER}"
Weiß nicht obs geht, aber vlt.
Oder füg folgende Zeile an den Anfang deines Codes ein:

PHP Code:
Opt ("SendKeyDelay"100

*Edit: Vorposter war schneller ;). Hab zu lange geschrieben^^
mfg
11/28/2009 23:03 MoepMeep#26
Quote:
Originally Posted by kaiN_92 View Post
normale würde ich case nehmen.

Hmm..das liegt eventuell daran, dass man warten muss bis der char im Bild ist.

Für einfach noch ein
sleep(2000)
oder so ein (also vor dem enter befehl)
Du weißt aber schon, dass eine Switch-Anweisung Case-Anweisungen beinhaltet? Zumindest in echten Programmiersprachen :p

Code:
Switch(variable)
{
case 1:
        //bla
        break;
case 2:
...
11/28/2009 23:05 freddy2001#27
0o warum ist mein Post jetzt vor General Desert's?!?!
naja egal^^
hab das mit der Sleep (1000) versucht...hat aber nicht geklappt.
11/28/2009 23:07 kaiN_92#28
Dann setz vor dem Enter ein Sleep und nach jedem rechts-druck.

ich wollt dir nur rechtgeben Moep :D
11/28/2009 23:08 HardCore.1337#29
Jo, hat nen Doppelpost und den anderen hab ich dann halt gelöscht und bla...

Zu deiner Frage:
Geh ma ins Spiel und drück Enter..
Passiert da was oder nicht?
Wenn da nichts passiert brauchste gar nicht weiter zu probieren. Wenn was passiert dann, ja was dann. Ich überleg mal

mfg
11/28/2009 23:09 BangerzZ#30
Das kann man ja nicht mit ansehen schnap dir irgent ein kostenloses e book über egal welche sprache und lern die Grundlagen.

Dieser thread wär nur halb so lang wenn du die könntest.

Ich kenn Metin 2 leider nicht aber ich schätze mal das die Charaktere propotional zur bildschirm auflösung sind dann kann man das einfach errechnen und das mit Click oder ControleClick machen.