|
You last visited: Today at 23:01
Advertisement
[Help] Mit dem GUI eine Schleife ausweichen
Discussion on [Help] Mit dem GUI eine Schleife ausweichen within the AutoIt forum part of the Coders Den category.
07/12/2010, 00:36
|
#1
|
elite*gold: 137
Join Date: Aug 2009
Posts: 428
Received Thanks: 98
|
[Help] Mit dem GUI eine Schleife ausweichen
Ich möchte mit einem GUI einen einfachen KlickBot machen. Am liebste hätte ich ihn mit HotkeySet's gemacht, aber einige Spiele Blocken das *böse nach S4L schau*.
Ich habe schonmal Grundcode aufgelistet, aber er funzt net, da die Schleife die Pausetaste sozusagen ausschaltet.
PHP Code:
#RequireAdmin #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3>
$Form1 = GUICreate("Bot", 331, 130, 192, 124) $Button1 = GUICtrlCreateButton("Start", 8, 8, 153, 105, 0) $Button2 = GUICtrlCreateButton("Pause", 168, 8, 145, 105, 0) GUICtrlSetState(-1, $GUI_DISABLE) GUISetState(@SW_SHOW)
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $i=0 GUICtrlSetState($Button1, $GUI_DISABLE) GUICtrlSetState($Button2, $GUI_ENABLE) While $i=0 MouseClick("left") Sleep(1000) WEnd Case $Button2 $i=1 GUICtrlSetState($Button1, $GUI_ENABLE) GUICtrlSetState($Button2, $GUI_DISABLE) While $i=1 Sleep(1000) Wend EndSwitch WEnd
Wäre froh, wenn mir wer helfen würde.
MFG: Robin
|
|
|
07/12/2010, 01:18
|
#2
|
elite*gold: 0
Join Date: Mar 2008
Posts: 1,524
Received Thanks: 285
|
PHP Code:
#RequireAdmin #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3>
$Form1 = GUICreate("Bot", 331, 130, 192, 124) $Button1 = GUICtrlCreateButton("Start", 8, 8, 153, 105, 0) $Button2 = GUICtrlCreateButton("Pause", 168, 8, 145, 105, 0) GUICtrlSetState(-1, $GUI_DISABLE) GUISetState(@SW_SHOW)
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $i=0 GUICtrlSetState($Button1, $GUI_DISABLE) GUICtrlSetState($Button2, $GUI_ENABLE) While $i=0 MouseClick("left") Sleep(1000) WEnd Case $Button2 _pause() EndSwitch WEnd
Func _pause() while 1 sleep(50) WEnd EndFunc
sollte funktionieren, kann sein das etwas falsch ist, bin etwas betrunken
€: das mit dem disable der buttons solltest du eig. allein lösen können
|
|
|
07/12/2010, 02:00
|
#3
|
elite*gold: 1
Join Date: Oct 2008
Posts: 1,078
Received Thanks: 276
|
Dein Code hat exakt die selbe Funktionalität wie der seine mit dem einzigen unterschied, dass du deine Pause Schleife (die alles erst zum hängen bringt) in einer extra Funktion untergebracht hast
Richtig würde es(wenn ich dich jetzt wirklich richtig verstanden habe) so aussehen:
PHP Code:
#RequireAdmin #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3>
$Form1 = GUICreate("Bot", 331, 130, 192, 124) $Button1 = GUICtrlCreateButton("Start", 8, 8, 153, 105, 0) $Button2 = GUICtrlCreateButton("Pause", 168, 8, 145, 105, 0) GUICtrlSetState(-1, $GUI_DISABLE) GUISetState(@SW_SHOW)
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $i=0 GUICtrlSetState($Button1, $GUI_DISABLE) GUICtrlSetState($Button2, $GUI_ENABLE) $continueBotting = True While $continueBotting MouseClick("left") Sleep(1000) $continueBotting = trackUserInput($Button1) WEnd Case $Button2 $i=1 GUICtrlSetState($Button1, $GUI_ENABLE) GUICtrlSetState($Button2, $GUI_DISABLE) $continue = True While $continue Sleep(1000) $continue = trackUserInput($Button2) Wend EndSwitch WEnd
Func trackUserInput($trackedID) $msg=GuiGetMsg()
If $msg <> 0 And $msg <> $trackedID Then ;Did any notified object fire? Return False ;Yes! Else Return True ;No! EndIf
EndFunc
Das ist eine relative performante Funktion, die eine Schleife ohne großen Firlefanz unterbricht falls nötig, ohne lange Überprüfungen auszuführen 
Da dein Bot wegen der ja recht langen Wartezeiten eh nicht sehr schnell arbeitet macht es kaum nen Unterschied, allerdings ist der Code so sauberer und vllt. hilfts auch wem anders^^
Zu deinem Problem mit HotkeySet, schau dir mal in der Misc.au3 die _IsPressed Funktion an, mit nem bisschen If-Gedruckse ist das besser als jede HotkeySet-Anwendung
Sollte ich dir irg. welche Syntaxfehler eingebaut haben schrei ruhig ich hab jetzt ne gut Weile schon kein AutoIT mehr geschrieben...
|
|
|
07/12/2010, 07:36
|
#4
|
elite*gold: 137
Join Date: Aug 2009
Posts: 428
Received Thanks: 98
|
@bladerofdarknes Funzt nicht und kann auch gar nicht funkzionieren. In einer While drinne kann er nicht zurück zu Switch.
@.nAno deines sieht viel versprechend aus, aber funzt auch nicht. Muss ich vlt noch ne Include beinehmen?
Nja für beide mal ein THX für schnelle antwort.
€: habe mal bissel die Variablen umbenannt. Jetzt gehts mehr oder weniger.
|
|
|
07/12/2010, 10:58
|
#5
|
elite*gold: 1
Join Date: Oct 2008
Posts: 1,078
Received Thanks: 276
|
entschuldige, hab die Initialisierung der Variablen $botting bzw. $continueBotting vergessen, ich sollte so spät nichtmehr coden^^
Ich hab den korrekten Code editiert
|
|
|
07/12/2010, 11:21
|
#6
|
elite*gold: 0
Join Date: Mar 2008
Posts: 1,524
Received Thanks: 285
|
du musst auch wieder auf start drücken
|
|
|
 |
Similar Threads
|
while-schleife cast x | schleife ende cast y
07/26/2010 - Diablo 2 Programming - 6 Replies
ich kann nicht einschlafen und versuche gerade halbwach herauszufinden, wie ich den bot etwas casten lassen kann, um ihn anschließend nach 10-15 casts etwas anderes casten zu lassen.
if(NTA_GetResistance(target, NTA_DAMAGE_PHYSICAL) >= 100)
{
if((target.name == "Pindleskin") && NTA_GetResistance(target, NTA_DAMAGE_PHYSICAL) >= 100)
{
var i =0;
while(i<15)
{
return NTC_CastSkill(106, NTC_HAND_LEFT, target);
i++;
|
[HOW TO]Mit CounterSword schnell ausweichen
03/26/2010 - S4 League - 47 Replies
Ich zeige euch mal wie ihr schnell mit CounterSword ausweichen könnt :
Punkt 1.
Ihr nehmt das Countersword und macht Block.
Punkt 2.
Ihr lasst Block los und weicht gleich aus: Ihr weicht nicht auf dem Boden aus sondern der Charakter geht in die Luft.
Punkt 3.
Ihr macht wieder Block und wiederholt das wieder .......
|
schleife eine bestimmte zeit laufen lassen
12/31/2009 - AutoIt - 17 Replies
geht das das ich etwas eine bestimmte zeit wiederhole
|
[Longjuyt2] Ausweichen +5
07/13/2009 - Metin2 Trading - 0 Replies
Tausche meinen Stein d. Ausweichens +5 ggn Ninja,Schami oder Sura +5
mfg
|
Autoit schleife die wartet bis das eine oder andere eintritt
07/21/2008 - General Coding - 9 Replies
Hallo zusammen,
ich bastel jetzt schon seit tagen an einem scriptteil aber komme nicht weiter!
Folgendes ich versuche in autoit ein schleife zu bauen , die darauf wartet das
sich entweder ein pixel an der stelle x oder ein pixel an der stelle y verändert .
Anders gesagt die schleife soll warten bis ein pixel am oberen rand schwarz wird
oder der andere pixel unten in einer leiste sich verändert wobei da die farbe unterschiedlich ist !
|
All times are GMT +1. The time now is 23:02.
|
|