|
You last visited: Today at 11:36
Advertisement
Hilfe bei einer Schleife
Discussion on Hilfe bei einer Schleife within the AutoIt forum part of the Coders Den category.
04/18/2011, 20:28
|
#1
|
elite*gold: 520
Join Date: Aug 2006
Posts: 65
Received Thanks: 5
|
Hilfe bei einer Schleife
brauche Bitte etwas hilfe bei meiner Schleife,
und zwar geht sie bis hier her einwandfrei:
Code:
If $Goldold < $Gold Then
$Output2 = 100
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Jippi ey jaeh Du hast gewonnen" & @CRLF)
Sleep(100)
EndIf
If $Goldold = $Gold Then
MsgBox(0, $Goldold, "Bot pausier, Du hast zu wenig Gold zum setzten", 1)
IniWrite(@ScriptDir & "\log.ini", "Spiele verloren hintereinander", "Spiel " & $I, " " & $Output2 / 100 & " Du hast nicht genügend Gold mehr zum Spielen")
TogglePause()
Sleep(100)
EndIf
If $Goldold > $Gold Then
$Output2 = $Output2 * $WERT1
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Mist Du hast verloren" & @CRLF)
_relog()
Sleep(100) ; <------- bis hier her ok
<----------- er soll wenn 15 mal die Schleife " If $Goldold > $Gold Then" vorher aufgerufen wurde mir meine MsgBox anzeigen und Pause machen.
For $ii=1 to 15
MsgBox(0, $ii, "Du hast schon 15 Runden hintereinander verlorem, möchtest Du weiterspielen ? dann drücke F9 ", 1)
TogglePause()
next
EndIf
Next
hat wer ne Idee wie man das machen könnt er macht es immer nach kurzen Versuche und nicht wie gewünscht nur wenn er 15 mal verloren hat.
Danke
ich habs auch schon mit If $ii = 15 Then probiert will er auch nicht :-(
mfg
|
|
|
04/18/2011, 21:07
|
#2
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
so?
PHP Code:
Global $checker = 0
If $Goldold < $Gold Then $Output2 = 100 _GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Jippi ey jaeh Du hast gewonnen" & @CRLF) Sleep(100) EndIf
If $Goldold = $Gold Then MsgBox(0, $Goldold, "Bot pausier, Du hast zu wenig Gold zum setzten", 1) IniWrite(@ScriptDir & "\log.ini", "Spiele verloren hintereinander", "Spiel " & $I, " " & $Output2 / 100 & " Du hast nicht genügend Gold mehr zum Spielen") TogglePause() Sleep(100) EndIf
If $Goldold > $Gold Then if $checker = 15 Then MsgBox("","","insgesammt 15 mal verloren") TogglePause() EndIf $Output2 = $Output2 * $WERT1 _GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Mist Du hast verloren" & @CRLF) $checker += 1 Sleep(100) _relog() EndIf Next
|
|
|
04/18/2011, 21:11
|
#3
|
elite*gold: 52
Join Date: Oct 2010
Posts: 1,998
Received Thanks: 389
|
Wie wäre es wenn du noch eine Variable setzt, der immer +1 addiert wird und unten dann If $Verloren = 15.
Edit: Arrg zu spät :P
|
|
|
04/18/2011, 22:16
|
#4
|
elite*gold: 520
Join Date: Aug 2006
Posts: 65
Received Thanks: 5
|
Hiho und Danke für die Hilfe aber er nacht da nix, nach der verlorenen anzahl.
Er entscheidet oben mit If $Goldold > $Gold Then ob er im Spiel gewonnen hat oder verloren oder ob der Betrag von sein Gold noch gleich ist. bei = ist der Serverdown und er Pausiert auch. Wenn er verliert dann Multipliziert er den Startwert und soll nun noch eine Warnung ausgeben zb. nach 15 mal das man schon so viel hinternander verloren hat weil die Goldbeträge in 100.000 - ner Million dann gehen und man somit entscheiden kann weiter zu Spielen und Pleite zu gehen oder abzubrechen. ^^
also oben das muss so weiter Funktionieren :
If $Goldold > $Gold Then
$Output2 = $Output2 * $WERT1
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Mist Du hast verloren" & @CRLF)
_relog()
Sleep(100)
damit er richtig entscheidet ob er gewonnen hat oder nicht, danach bräuchte ich halt die meldung das er schon 15 oder x mal verloren hat.
Vielleicht sollte ich noch dazu schreiben das er nicht alle verlorenen Spiele zählen soll sondern nur die hintereinander an einen Stück verloren werden, der rest ist ja egal wenn er gewinnt fängt er mit ausgangswert wieder an.
vielleicht sollte ich mal die komplette Schleife posten:
PHP Code:
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
_start()
Global $Output2 = 100
For $I = 1 To 999999
IniWrite(@ScriptDir & "\SFGold.ini", "Vermögen", "Goldold ", $Gold)
Sleep(100)
_schalter()
_Spiel()
Sleep(100)
_relog()
$Goldold = IniRead(@ScriptDir & "\SFGold.ini", "Vermögen", "Goldold ", "")
Sleep(100)
ToolTip("Gold vorher hattes Du: " & $Goldold / 100 & @CRLF & "aktuelles Gold hast Du: " & $Gold / 100 & @CRLF & "gesetzt in dieser Runde: " & $Output2 / 100, 25, 25)
If $Goldold < $Gold Then
$Output2 = 100
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Jippi ey jaeh Du hast gewonnen" & @CRLF)
Sleep(100)
EndIf
If $Goldold = $Gold Then
MsgBox(0, $Goldold, "Bot pausier, Du hast zu wenig Gold zum setzten", 1)
IniWrite(@ScriptDir & "\log.ini", "Spiele verloren hintereinander", "Spiel " & $I, " " & $Output2 / 100 & " Du hast nicht genügend Gold mehr zum Spielen")
TogglePause()
Sleep(100)
EndIf
If $Goldold > $Gold Then
if $checker = 3 Then
MsgBox("","","insgesammt 15 mal verloren")
TogglePause()
EndIf
$Output2 = $Output2 * $WERT1
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Mist Du hast verloren" & @CRLF)
$checker += 1
Sleep(100)
_relog()
EndIf
Next
Case $Button2
TERMINATE()
Exit
Case $Button3
Speichern()
MsgBox(0, "", "Speichern war erfolgreich, Bot neu starten Bitte", 1)
Sleep(200)
Exit
EndSwitch
WEnd
mfg
|
|
|
04/19/2011, 13:47
|
#5
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
nja dann musst du einfach in dem bereich wo er gewinnt sprich: $Goldold < $Gold am ende den wert in $checker auf 0 setzen...
dann noch unter $Goldold > $Gold eine msgbox in der steht wie oft du schon hintereinander verloren hast als kleine info...
was soll er bei $Goldold = $Gold machen? wenn das auch als "win" zählt, setz den wert $checker da auch noch auf 0....
zb so:
PHP Code:
Global $checker = 0
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
_start()
Global $Output2 = 100
For $I = 1 To 999999
IniWrite(@ScriptDir & "\SFGold.ini", "Vermögen", "Goldold ", $Gold)
Sleep(100)
_schalter()
_Spiel()
Sleep(100)
_relog()
$Goldold = IniRead(@ScriptDir & "\SFGold.ini", "Vermögen", "Goldold ", "")
Sleep(100)
ToolTip("Gold vorher hattes Du: " & $Goldold / 100 & @CRLF & "aktuelles Gold hast Du: " & $Gold / 100 & @CRLF & "gesetzt in dieser Runde: " & $Output2 / 100, 25, 25)
If $Goldold < $Gold Then
$Output2 = 100
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Jippi ey jaeh Du hast gewonnen" & @CRLF)
Sleep(100)
$checker = 0
EndIf
If $Goldold = $Gold Then
MsgBox(0, $Goldold, "Bot pausier, Du hast zu wenig Gold zum setzten", 1)
IniWrite(@ScriptDir & "\log.ini", "Spiele verloren hintereinander", "Spiel " & $I, " " & $Output2 / 100 & " Du hast nicht genügend Gold mehr zum Spielen")
TogglePause()
Sleep(100)
EndIf
If $Goldold > $Gold Then
$Output2 = $Output2 * $WERT1
_GUICtrlEdit_AppendText($EDIT1, "[" & @HOUR & ":" & @MIN & "] " & "Mist Du hast verloren" & @CRLF)
$checker += 1
If $checker > 1 Then MsgBox("","","Du hast schon " & $checker & " mal hintereinander verloren")
Sleep(100)
If $checker = 3 Then
MsgBox("", "", "insgesammt 15 mal verloren")
TogglePause()
EndIf
_relog()
EndIf
Next
Case $Button2
TERMINATE()
Exit
Case $Button3
Speichern()
MsgBox(0, "", "Speichern war erfolgreich, Bot neu starten Bitte", 1)
Sleep(200)
Exit
EndSwitch
WEnd
|
|
|
04/19/2011, 14:41
|
#6
|
elite*gold: 0
Join Date: Feb 2011
Posts: 1,351
Received Thanks: 410
|
omer36 kannst du mir vielt auch kurz helfen?
Ich brauche eine Schleife, damit mein Bot etwas ca.200 mal ausführt. Ich verstehe es bei den Tutorials nicht, da ich nicht weiß, wie ich die Anzahl änder, wie oft er es ausführen soll und wo ich den Code von mir eintragen soll.
Danke im voraus.
|
|
|
04/19/2011, 15:44
|
#7
|
elite*gold: 255
Join Date: Nov 2009
Posts: 2,900
Received Thanks: 1,408
|
Quote:
Originally Posted by netterwurm8
omer36 kannst du mir vielt auch kurz helfen?
Ich brauche eine Schleife, damit mein Bot etwas ca.200 mal ausführt. Ich verstehe es bei den Tutorials nicht, da ich nicht weiß, wie ich die Anzahl änder, wie oft er es ausführen soll und wo ich den Code von mir eintragen soll.
Danke im voraus. 
|
Benutz einfach eine For-Schleife.
Code:
For $i = 1 To 200 Step 1
MsgBox(0,0,0)
Next
|
|
|
04/19/2011, 15:59
|
#8
|
elite*gold: 520
Join Date: Aug 2006
Posts: 65
Received Thanks: 5
|
Danke Omer 36 teste ich heut abend :-)
mfg
|
|
|
04/19/2011, 16:20
|
#9
|
elite*gold: 0
Join Date: Feb 2011
Posts: 1,351
Received Thanks: 410
|
Quote:
Originally Posted by _DownTime
Benutz einfach eine For-Schleife.
Code:
For $i = 1 To 200 Step 1
MsgBox(0,0,0)
Next
|
Wo soll nun mein Code rein, der 200x ausgeführt werden soll? Davor , danach oder dazwischen?
Danke im voraus.
|
|
|
04/19/2011, 16:24
|
#10
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
Quote:
Originally Posted by netterwurm8
Wo soll nun mein Code rein, der 200x ausgeführt werden soll? Davor , danach oder dazwischen?
Danke im voraus.
|
PHP Code:
For $i = 1 To 200 Step 1
;
;alles was hier drinne ist, wird 200mal ausgeführt
;
Next
.....
|
|
|
04/21/2011, 20:45
|
#11
|
elite*gold: 520
Join Date: Aug 2006
Posts: 65
Received Thanks: 5
|
Danke nochmal Omer 36 hat Prima hingehaun.
Thraed kann geschlossen werden
|
|
|
 |
Similar Threads
|
[HILFE] If-Schleife
12/29/2010 - AutoIt - 13 Replies
Nacht Com,
ALsoo^^ hab da bissl an nem skript rumgespielt. komme jz aber nicht mehr weiter. Undzwar hab ich nen Ladebalken. Wenn dieser vollgeladen ist soll eine MsgBox erscheinen. Jz komm ich nicht weiter (If-Schleifen sind nicht mein ding^^) Bitte um Hilfe. Pls nicht lachen oda dumme Kommis geben. THX
|
aus einer schleife in die andere.
12/27/2010 - AutoIt - 3 Replies
$zaehler = 0
While $zaehler = 0
Sleep (5000)
$zaehler = 1
If $zaehler = 1 Then
While $zaehler > 1
MouseClick ("left", 683, 439)
Sleep (500)
MouseClick ("left", 682, 673)
Sleep(500)
|
For-Schleife einer GUI untebrechen und mit Schließen einer andern GUI wiederaufnehmen
10/13/2010 - AutoIt - 7 Replies
Hi,
ich hab folgendes AutoIT Problemchen und komm einfach nicht weiter.
Zur Veranschauung des Problems hab ich mein eigentliches Programm mal auf einen Minimalcode reduziert.
Das Programm macht so natürlich grad keinen großen Sinn, aber ich kann euch zeigen, wo's Hakt.
Es geht darum: Ich hab ein Haupt-GUI von dem aus ich eine FOR-Schleife starte.
Nun soll pro abgearbeiteten STEP der For-Schleife die Unter-GUI gestartet und aus der For-Schleife der Wert übergeben werden.
Die...
|
Nach einer Schleife zu bestimmter Varibale 1 addieren wie?
08/08/2009 - AutoIt - 7 Replies
tach
ich würd mal gern wissen wie man bei autoit wenn er einmal eine While gemacht hat das er damm zu einer bestimmten Variabel 1 addiert
MFG 113puma
|
All times are GMT +1. The time now is 11:37.
|
|