nachdem ich mehrfach die SuFu mit diversen Wörtern gefüttert hab, und keine passende antwort gefunden habe, stelle ich einfach hier die Frage,
wie kann bindet man eine .ini in einen GWCA-basierten bot ein (bzw ist mit den unten genannten sachen eine .ini überhaupt notwendig, oder kann man direkt an die GUI schreiben und wenn ja, wie geht das )?
D.h., ich hätte gern in der GUI (oder wie zB gabba es sehr elegant mit dem kleinen fenster links oben in seinem schneeball-dominanz-bot gelöst hat ) immerwieder aktualisierungen über erfolgreich abgeschlossene runs, fehlruns, botlaufzeit, und dergleichen!
Das mit den Runs kannst du ganz einfach per GUICtrlSetData machen. Wenn du etwas dauerhaft aktualisieren möchtest, wie du es hier z.B. bei dem Timer machen müsstest solltest du mal in der AutoIT- Hilfe Datei nach AdlibRegister bzw. AdlibEnable suchen.
versteh ich die AdlibRegister richtig, dass ich ne funktion (mit GUICtrlSetData wahrscheinlich) register und schon wird die während des gesamten skripts immerwieder wiederholt?
und wie kann ich dann nen timer erstellen, der wirklich genau sekunden/minuten/stunden zählt?
geht ne funktion wie zB
Global $Sekunden = 0
Func timer()
$Sekunden = $Sekunden + 1
EndFunc
und dann die func in AdlibRegister alle 1 sek wiederholen lassen? (edit: bzw alle 5 sek und dann halt immer in der func $sekunden + 5)
danach dann GUICtrlSetData($Label1, $Sekunden)
Ja, Adlibregister wiederholt diese Funktion, welche ihr zugewiesen wurde immer wieder je nachdem wie du die Zeit angegeben hast. Ganz so einfach ist der Timer aber auch nicht aufgebaut. Ich hab auch mal selbst einen geschrieben und der sah ungefähr so aus:
Code:
Global $Sek = 0
Global $Min = 0
AdlibRegister ( "Statistics", 1000 )
Func Statistics()
$Sek += 1
GUICtrlSetData($TimeLabel, $Min&":0"&$Sek)
If $Sek > 9 Then
GUICtrlSetData($TimeLabel, $Min&":"&$Sek)
EndIf
If $Sek = 60 Then
$Min += 1
GUICtrlSetData($TimeLabel, $Min&":00")
$Sek = $Sek - 60
EndIf
EndFunc
Ich würde dir jedoch empfehlen mal selbst einen zu schreiben.
#include <GUIConstants.au3>
#Region ### START Koda GUI section ### Form=
$cGUI = GUICreate("Form1", 361, 442, 193, 125)
$Button1 = GUICtrlCreateButton("Start Timer", 200, 16, 145, 33, 0)
$Label1 = GUICtrlCreateLabel("00:00:00", 200, 104, 148, 329)
$Button2 = GUICtrlCreateButton("Stop Timer", 200, 56, 145, 33, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$Sek = 0
$Min = 0
$Stu = 0
Func timer()
$Sek = $Sek + 1
If $Sek = 60 Then
$Min = $Min + 1
$Sek = 0
EndIf
If $Min = 60 Then
$Stu = $Stu + 1
$Min = 0
EndIf
If $Sek > 9 Then
If $Min > 9 Then
If $Stu > 9 Then
GUICtrlSetData($Label1, $Stu&":"&$Min&":"&$Sek)
Else
GUICtrlSetData($Label1, "0"&$Stu&":"&$Min&":"&$Sek)
EndIf
Else
If $Stu > 9 Then
GUICtrlSetData($Label1, $Stu&":0"&$Min&":"&$Sek)
Else
GUICtrlSetData($Label1, "0"&$Stu&":0"&$Min&":"&$Sek)
EndIf
EndIf
Else
If $Min > 9 Then
If $Stu > 9 Then
GUICtrlSetData($Label1, $Stu&":"&$Min&":0"&$Sek)
Else
GUICtrlSetData($Label1, "0"&$Stu&":"&$Min&":0"&$Sek)
EndIf
Else
If $Stu > 9 Then
GUICtrlSetData($Label1, $Stu&":0"&$Min&":0"&$Sek)
Else
GUICtrlSetData($Label1, "0"&$Stu&":0"&$Min&":0"&$Sek)
EndIf
EndIf
EndIf
EndFunc
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $Button1
AdlibRegister ("timer", 1000)
Sleep(100)
Case $Button2
AdlibUnRegister("timer")
Case $GUI_EVENT_CLOSE
Exit
Case Else
Sleep(100)
EndSwitch
WEnd
Die GUI-Größe hab ich weng vermurkst, ist also kein fehler bei potentiellen testern^^
Hab den timer nur bis 00:10:00 getestet und hat funktioniert, bei 10h hat mir die zeit (logischerweise xD) gefehlt, dürfte aber auch stimmen
Bei DualCore nur 1 Prozessor verwenden? 08/17/2010 - Technical Support - 11 Replies Hi liebe Com
Ich brauch wieder mal dringend eure Hilfe.
Und zwar ich hab nen DualCore rechner, bei dem komischerweise immer nur der 2te Kern überhitzt (obwohl über beide cpus 1 lüfter liegt, überhitzt immer nur der 2te...)
Also ich hätte mir folgendes gedacht, dass man irgentwie den 2ten kern lahm legt, so dass nur mit dem 1sten kern gearbeitet wird, wie wenn es ein Sigel Core währe.
geht das?
GM CODES VERWENDEN 07/29/2010 - Metin2 Private Server - 4 Replies hi,
Wie kann ich für Waffen, Rüssis,Lvl, usw. die GM-Befehle verwenden ( was muss ich vor die codes schreiben?)
Danke
PS: bekommst ein thx:D
Allegro mit C++ verwenden? 03/21/2010 - C/C++ - 5 Replies Nach ner Stunde googeln hab ichs aufgegeben, ich hab noch nicht soviel Erfahrung in C++ nur son bisschen mit Konsolenanwendung hab mir des Tutorial von schornboeck n paar mal durchgelesen aber jetzt möchte ich parallell zu dem Tutorial auch noch sowas in die richtung Spieleprogrammierung machen mit Allegro und C++ jetzt hab ich wie oben gesagt ne STUNDE gegoogelt und fast nichts brauchbares gefunden, nur ne sehr gute Seite wo steht wie man Allegro und C verwendet. Aber nicht Allegro und C++.Und...
Pointer verwenden 12/20/2009 - AutoIt - 16 Replies Hallo,
ich möchte gerne wissen, wie ich einen Pointer in mein Skript einbinde (SuFu ergab nichts hilfreiches).
Habe einen Pointer von Nostale mit CE gefunden, den für die HP, wie muss ich das Skript schreiben, damit er abgerufen und seine Mems gelsen werden?
Lg, Drugdog
Button 2 mal verwenden 10/27/2009 - AutoIt - 10 Replies hey ho
ich hab das komische problem, dass ich den button "Go To" nur einmal verwenden kann
kann mir vtl. einer erklääären warum? :(
auch den knopf zum schliessen kann ich nicht mehr verwenden, sobald ich den "Go To" knopf einmal verwendet habe.
kurz was das progi tun soll:
-koordinaten der aktuellen mauspos ausgeben
-hintergrundfarbe der aktuellen maus pos anzeigen