|
You last visited: Today at 03:02
Advertisement
Noobfragen
Discussion on Noobfragen within the AutoIt forum part of the Coders Den category.
03/18/2012, 16:46
|
#1
|
elite*gold: 0
Join Date: May 2011
Posts: 216
Received Thanks: 24
|
Noobfragen
Hallo,
ich habe "versucht" mir ein Skript zu basteln. Leider läuft dieses garnicht.
Wenn ich es starte passiert nichts, auch die Hotkeys nimmt er nicht an.
Kann mir vll. jemand sagen was ich falsch mache ?
Code:
Hotkeyset('{F1}','start')
Hotkeyset('{F2}','pause')
Hotkeyset('{F3}','ende')
Func pause()
while 1
sleep(100000000)
WEnd
EndFunc
Func start()
while 1
$a = 0
Do
MouseClickDrag ( "left", 232, 154, 92, 270)
mouseclick("left",330,186,1)
Sleep(100)
$a = $a + 1
Until $a = 99
mouseclick("left",440,185,1)
Sleep(100)
WEnd
EndFunc
Func ende()
Exit
EndFunc
|
|
|
03/18/2012, 16:55
|
#2
|
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
|
versuchs mal hiermit.
Läuft bei mir in allen Bots einwandfrei.
Code:
HotKeySet("^q", "verlassen")
$dll = DllOpen("user32.dll")
Func XY
EndFunc
Func verlassen()
DllClose($dll)
exit
EndFunc
|
|
|
03/18/2012, 17:43
|
#3
|
elite*gold: 4
Join Date: Jul 2009
Posts: 738
Received Thanks: 184
|
hallo, ich habe auch eine noobfrage und möchte keinen eigenen thread aufmachen.
ich benutze
PHP Code:
If PixelGetColor(***, ***) = farbe Then
um eine farbe auf einer position zu finden und dann auf etwas zu klicken.
kann ich auch
PHP Code:
If PixelSearch(***, ***, ***, ***, farbe, 0) Then
benutzen, um etwas von einer farbe in einem bereich abhängig zu machen (die farbe erscheint nicht immer am selben fleck)?
und welchen befehl benutze ich dafür, um auf das ändern einer farbe zu warten?
|
|
|
03/18/2012, 17:52
|
#4
|
elite*gold: 0
Join Date: May 2011
Posts: 216
Received Thanks: 24
|
Hat Funktioniert, danke !
|
|
|
03/18/2012, 19:47
|
#5
|
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
|
@shaco
hab zwar nicht so ganz im detail gecheckt was Du vorhast, aber hier mal n bissel Pixelsearch was Du dir zurecht friemeln kannst.
Code:
$counter = 0
While $counter < 5000
Pixelsearch($X+360,$Y+477,$X+390,$Y+490,0xFBFBFB,1,1)
if not @error then
$anzeigetext="blabla"
ToolTip("Bot läuft" & @CR & _
"MSG : " & $anzeigetext,1,50)
mouseclick("left", $X+504, $Y+482,1,0)
$counter=$counter+1
$counter=10000
Else
$anzeigetext="blabla2"
ToolTip("Bot läuft" & @CR & _
"MSG : " & $anzeigetext,1,50)
EndIf
$counter=$counter+1
wend
|
|
|
03/19/2012, 09:08
|
#6
|
elite*gold: 4
Join Date: Jul 2009
Posts: 738
Received Thanks: 184
|
hey hey danke, benutzt du die $counter nur um aus der while schleife zu kommen? würde das nicht auch mit einem Exitloop gehen?
|
|
|
03/19/2012, 12:42
|
#7
|
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
|
Frage 1: Nicht nur, ist noch n Übrerrest von was anderem
Frage 2: Ja
|
|
|
03/19/2012, 14:04
|
#8
|
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
|
Quote:
Originally Posted by BotofWar
Frage 1: Nicht nur, ist noch n Übrerrest von was anderem
Frage 2: Ja
|
Warum keine for-Schleife?
|
|
|
03/19/2012, 15:46
|
#9
|
elite*gold: 0
Join Date: May 2011
Posts: 216
Received Thanks: 24
|
Ich habe das nächste Problem, nachdem ich mehr oder weniger ein GUI drum gebastelt habe, ist dieses nicht mehr klickbar (die buttons) nachdem das skript mit f2 in pause geschickt wurde. Gibt es da einen Trick ?
Code:
Hotkeyset('{F3}','ende')
Hotkeyset('{F2}','pause')
Hotkeyset('{F1}','start')
$dll = DllOpen("user32.dll")
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("AcoDB Scanner", 211, 125, 301, 386)
GUISetBkColor(0x000000)
$Button1 = GUICtrlCreateButton("Jetzt starten", 0, 0, 210, 33)
$Button2 = GUICtrlCreateButton("Beenden", 0, 32, 210, 31)
$Button3 = GUICtrlCreateButton("Hilfe", 0, 62, 210, 33)
$Button4 = GUICtrlCreateButton("Credits", 0, 91, 210, 33)
GUICtrlSetBkColor(-1, 0x3399FF)
GUISetState(@SW_SHOW)
while 1
$msg = guigetmsg()
if $msg = $button1 then start()
if $msg = $button2 then ende()
if $msg = $button3 then hilfe()
if $msg = $button4 then credits()
If $msg = $GUI_EVENT_CLOSE Then Exit
wend
Func start()
while 1
$a = 0
Do
MouseClickDrag ( "left", 232, 154, 92, 270, 4)
mouseclick("left",330,186,1)
Sleep(100)
$a = $a + 1
Until $a = 99
mouseclick("left",440,185,1)
Sleep(100)
WEnd
EndFunc
Func pause()
while 1
Sleep(100)
WEnd
EndFunc
Func ende()
DllClose($dll)
Exit
EndFunc
Func hilfe()
MsgBox(64, "Hilfe", "F1 Start" &@CRLF& "F2 Pause" &@CRLF& "F3 Beenden")
EndFunc
Func credits()
MsgBox(64, "Credits", "Blub")
EndFunc
|
|
|
03/19/2012, 20:24
|
#10
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by -JPS-
Ich habe das nächste Problem, nachdem ich mehr oder weniger ein GUI drum gebastelt habe, ist dieses nicht mehr klickbar (die buttons) nachdem das skript mit f2 in pause geschickt wurde. Gibt es da einen Trick ?
Code:
Func pause()
while 1
Sleep(100)
WEnd
EndFunc
|
überleg doch mal was da passiert, wenn du die pause funktion aufrufst...
|
|
|
03/19/2012, 20:45
|
#11
|
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
|
Code:
Func Pause()
$anzeigetext="Pause- Weiter mit ENDE-Taste"
Anzeige()
While 1
Sleep ( 300 )
If _IsPressed("23", $dll) Then; Ende Taste
ExitLoop
EndIf
WEnd
EndFunc
@Jacky: Das sind noch Fragmente von meinen aller ersten Bots die sich über die Jahre hinweg gehalten haben. Wenn ich sowas heute neu schreibe benutze ich auch for-Schleifen. Aber letztendlich isses mir Wurst solange es funzt.
|
|
|
03/20/2012, 14:39
|
#12
|
elite*gold: 0
Join Date: May 2011
Posts: 216
Received Thanks: 24
|
Das habe ich soweit verstanden, gibt es eine möglichkeit ihn statt in "exit" in eine andere schleife zu schicken, in dem fall die "start".
Bitte nicht böse sein, beschäftige mich erst seit 2 tagen mit autoit, bisher hat google mir alles beigebracht nun komm ich selbst damit nicht weiter
|
|
|
03/20/2012, 15:58
|
#13
|
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
|
Such mal in der Autoit -Hilfe nach _IsPressed und such dir was nettes aus.
Dann ersetzt Du ExitLoop einfach mit dem funktionsnamen.
Müsste eigentlich funzen. Hab sowas selbst noch nie gemacht aus ner pause raus was anderes aufgerufen.
|
|
|
03/20/2012, 16:05
|
#14
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
man arbeitet in scriptsprachen nie mit mehr als EINER endlosschleife...
willst du eine pause in deine hauptschleife einbauen, so erstellst du dir einfach einen zustand $pause. ist $pause Wahr, so wird die aktion nicht ausgeführt. ist $pause Falsch, so wird sie ausgeführt.
deine pause funktion setzt dann nur $pause = Not $pause, also wenn $pause Wahr ist, ist $pause danach Falsch. War $pause Falsch, so ist der zustand nun Wahr.
beispiel code:
Code:
Dim $pause = True
GuiCreate(...)
$button = GuiCtrlCreateButton(...)
While True
$msg = GuiGetMsg()
If $msg=$button Then $pause = Not $pause
If Not $pause Then
[aktionen]
EndIf
WEnd
|
|
|
Similar Threads
|
Noobfragen zu Hacks
10/14/2009 - General Coding - 9 Replies
Hey
ich möchte mich nun auch einmal mit dem Hackschreiben befassen.
Ich habe keine Kenntnisse in jeglichen Programmiersprachen, daher wollte ich C++ zum Anfang lernen.
Hauptsächlich möchte ich Hacks für Games schreiben wie War Rock.
Vor einiger Zeit hatte ich mich an Visual basic 6.0 probiert und so z.B. einen Taschenrechner, Hell World ... die kleinen Noobanwendungen halt erstellt...leider schon alles vergessen.
Was ist denn nun besser, C++ oder VB6(welche Sprache das auch sein mag)?...
|
All times are GMT +2. The time now is 03:02.
|
|