1. 1-min-alk-bot

01/03/2010 18:34 diavy#1
hallo zusammen.
Ich möchte als allererstes sagen dass ich mich erst seit gestern mit autoit beschäftige, und erst 2 Tutorials durchgelesen habe, trotzdem wollte ich mal selbst was ausprobieren (nicht zuletzt zur Motivation, um weiterzu"lernen"...). Ein Alk-Bot kam mir als relativ einfach vor...
Das ganze ist nur für 1-min-alk, ganz wichtig, und ich habe aus Angst meinen schönen Alk zu verschwenden den Bot auch noch nicht ausprobiert, sondern wollte eure Kommentare, Verbesserungen hören.
JA, esgibt kein GUI, da ich mir das noch nicht angeschaut hab.
Und Ja, die die es stört dass ech bereits was ausprobiere ohne autoit wirklich draufzuhaben sollen ihre kommentare doch bitte für sich halten ;)
Code:
#Include <GuildWars.au3>

Run "C:\Program Files\GUILD WARS\Gw.exe"
WinActive ("Guild Wars")
sleep (1000)
Global $anzahl = InPutBox("Alkohol", Wie viel ist vorhanden?")
$wartezeit = random(53000,58000,1)
$x = InPutBox("X-Position", "bitte geben sie die x-position ein!")
$y = InPutBox("Y-Position", "bitte geben sie die y-position ein!")
ansaufen()
Next
saufen()
Exit

func ansaufen()
	For $i = 1 to 5
	MouseClick("left",$x,$y,2)
	sleep (500)
	Next
	$anzahl = $anzahl - 5
	sleep(181000)
EndFunc

func saufen()
	Do MouseClick("left",$x,$y,2)
		sleep($wartezeit)
		$anzahl = $anzahl - 1
	Until $anzahl = 0
EndFunc
Freue mich auf produktive Kritik! ;)
diavy
01/03/2010 21:05 Garry goes Sheep#2
Wie wär's mit Doppelklicks? :P
01/03/2010 21:36 diavy#3
find den befehl dafür gerade nicht... wie lautet er?
01/03/2010 21:54 NANAAA#4
Quote:
MouseClick ( "button" [, x, y [, clicks [, speed ]]] )


Parameters

button The button to click: "left", "right", "middle", "main", "menu", "primary", "secondary".

x, y [optional] The x/y coordinates to move the mouse to. If no x and y coords are given, the current position is used (default).

clicks [optional] The number of times to click the mouse. Default is 1.

speed [optional] the speed to move the mouse in the range 1 (fastest) to 100 (slowest). A speed of 0 will move the mouse instantly. Default speed is 10.
Die Parameter beachten


Mouseclick("left",$x,$y,2)
01/03/2010 21:58 diavy#5
habs geändert, sollte jetzt richtig sein?
und gibts sonst noch dinge auf die ich achten sollte?
01/03/2010 22:04 NANAAA#6
Quote:
MousClick("left",$x,$y,2)
sleep(500)
MouseClick("left",$x,$y,2)
sleep(500)
MouseClick("left",$x,$y,2)
sleep(500)
MouseClick("left",$x,$y,2)
sleep(500)
MouseClick("left",$x,$y,2)
Ist unnötig soviel zu schreiben ... mach das mit Do Next..

Quote:
MouseMove($x,$y)
MouseMove braucht es nicht unbedingt da die $x und $y ja durch das klick festgelegt sind
01/04/2010 10:33 diavy#7
Do next?
Hab in der autoit hilfe dazu nichts gefunden... :/
01/04/2010 11:10 Gabba2#8
Ich vermute er meint For... Next.
Code:
For $i = 1 to 5
MousClick("left",$x,$y,2)
sleep(500)
next
damit sollte er 5 mal den Doppelklick ausführen.
01/04/2010 14:00 NANAAA#9
ja genau ^^ hab mein Kopf halt ned immer bei der Sache xD
01/04/2010 15:25 diavy#10
danke euch beiden :)
sonst sollte er klappen?
auf was sollte ich sonst achten?

edit: mit welchem befehl öffne ich eigentlich guild wars,
run <Guildwars.exe/Gw.exe/GW/GuildWars(.au3?)> oder
run "C:\C:\Program Files\GUILD WARS(.exe/.au3?)"
01/04/2010 15:32 NANAAA#11
run "C:\"Pfad"\Guild Wars.exe"

.au3 ist für das bearbeites des AutoIt Scripts
.exe sind ausführbare Programme
01/04/2010 15:49 diavy#12
und dann brauch ich kein include oder?
01/04/2010 17:29 HardCore.1337#13
nein, die exe funktioniert auf jedem rechner
01/04/2010 20:00 in MIND#14
Run([pfad],"","")
die eckigen klammern natürlich weglassen und stattdessen einfach den pfad zur gw.exe angeben
01/04/2010 21:25 diavy#15
sollte doch so richtig sein?