1. die identifizierung des 5. Slots.
2. Das Identkit im Hintergrund verschieben.
zu 1.)
$ident_x = 40
$ident_y = 285
$Slot1_x = 40
$Slot1_y = 80
For $iy = $Slot1_y To $Slot1_y + 140 Step 45
For $ix = $Slot1_x To $Slot1_x + 160 Step 40
also,X-Wert von :
Slot1 ist 40
Slot2 +40
Slot3 +80
Slot4 +120
und Slot5 +160
also müsste das doch eigentlich funktionieren..., der identifiziert aber nur von Slot1 bis 4. Hab auch schon mit +150, 155, 165, und 170 ausprobiert.
zu 2.)
MouseClickDrag("left",36,315,43,108)
funktioniert nur im aktiven Fenster,
aber wie geht das im Hintergrund ?
hier auch mal mein Script:
Gildenhalle : Insel des Zauberers
Skill 4 : Symbol des Zorns
Skill 5 : Gesegnetes Siegel
Steuerung : Inventar:Alle Taschen anzeigen = . (Punkt)
PHP Code:
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.0.0
Author: Micha7
Script Function:
TQ Farmbot
#ce ----------------------------------------------------------------------------
#cs
; Script Start - Add your code below here
Opt("CaretCoordMode", 1) ;1=absolute, 0=relative
Opt("ExpandEnvStrings", 0) ;0=don't expand, 1=do expand
Opt("MouseClickDelay", 10) ;10 milliseconds
Opt("MouseClickDownDelay", 10) ;10 milliseconds
Opt("MouseClickDragDelay", 250) ;250 milliseconds
Opt("MouseCoordMode", 1) ;1=absolute, 0=relative
Opt("MustDeclareVars", 0) ;0=no, 1=require pre-declare
Opt("PixelCoordMode", 1) ;1=absolute, 0=relative
Opt("RunErrorsFatal", 1) ;1=fatal, 0=silent set @error
Opt("SendAttachMode", 0) ;0=don't attach, 1=do attach
Opt("SendCapslockMode", 1) ;1=store and restore, 0=don't
Opt("SendKeyDelay", 5) ;5 milliseconds
Opt("SendKeyDownDelay", 1) ;1 millisecond
Opt("TrayIconDebug", 0) ;0=no info, 1=debug line info
Opt("TrayIconHide", 0) ;0=show, 1=hide tray icon
Opt("WinWaitDelay", 250) ;250 milliseconds
Opt("WinDetectHiddenText", 0) ;0=don't detect, 1=do detect
Opt("WinSearchChildren", 1) ;0=no, 1=search children also
Opt("WinTitleMatchMode", 1) ;1=start, 2=subStr, 3=exact, 4=...
Opt("WinWaitDelay", 250) ;250 milliseconds
#ce
Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
WinWait("Guild Wars","")
If Not WinActive("Guild Wars","") Then WinActivate("Guild Wars","")
WinWaitActive("Guild Wars","")
WinMove("Guild Wars","",0,0,800,600)
;- START HOTKEY mit PAUSE Taste könnt ihr den bot Pausieren lassen
HotKeySet("{PAUSE}", "TogglePause")
Global $Paused
Func TogglePause()
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('Der Bot wurde angehalten',0,0)
WEnd
ToolTip("Der Bot wird wieder ausgeführt")
If Not WinActivate("Guild Wars") Then
WinActivate("Guild Wars")
WinMove("Guild Wars","",0,0,800,600)
EndIf
Sleep(2000)
EndFunc
;- ENDE HOTKEY mit PAUSE Taste könnt ihr den bot Pausieren lassen
;- START HOTKEY mit Ende beendet ihr das Script
hotkeyset("{End}", "end")
func end()
Exit
EndFunc
;- ENDE HOTKEY mit Ende beendet ihr das Script
;-Start HOTKEY Stealth Modus
HotKeySet("{PGUP}", "stealth_on")
HotKeySet("{PGDN}", "stealth_off")
Func stealth_on()
WinSetState("Guild Wars","",@SW_HIDE)
EndFunc
Func stealth_off()
WinSetState("Guild Wars","",@SW_SHOW)
EndFunc
;-Ende HOTKEY Stealth Modus
Func _MakeLong($LoWord, $HiWord)
Return BitOR($HiWord * 0x10000, BitAND($LoWord, 0xFFFF))
EndFunc ;==>_MakeLong
Func _MouseClick($hWnd, $button, $x, $y, $times = 1, $delay = 15)
If $hWnd = 0 Then
SetError(-1)
Return
EndIf
Local $ix
Local $lParam = _MakeLong($x, $y)
Local $user32 = DllOpen("user32.dll")
$button = StringLower($button)
If $button = "left" Then
For $ix = 1 To $times
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x200, "int", 0, "long", $lParam)
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x201, "int", 1, "long", $lParam)
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x202, "int", 0, "long", $lParam)
If $ix < $times Then Sleep($delay)
Next
ElseIf $button = "right" Then
For $ix = 1 To $times
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x200, "int", 0, "long", $lParam)
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x204, "int", 2, "long", $lParam)
DllCall($user32, "int", "PostMessage", "hwnd", $hWnd, "int", 0x205, "int", 0, "long", $lParam)
If $ix < $times Then Sleep($delay)
Next
Else
SetError(-2)
If $user32 <> -1 Then DllClose($user32)
Return
EndIf
If $user32 <> -1 Then DllClose($user32)
EndFunc ;==>_MouseClick
$hWnd = WinGetHandle("Guild Wars")
;-Start Eingabe von /resign
Send("{Enter}")
Sleep(1000)
Send("/resign")
Sleep(1000)
Send("{Enter}")
;-Ende Eingabe von /resign
Sleep(1000)
;-Start Farmen
While 1
;-Start Normalmode to Hardmode befor run Bot
ControlClick($hWnd,"","","left",1,657,50)
;-Ende Normalmode to Hardmode befor run Bot
;-Start Weg aus Tquellen
Global $Runden = 0
Do
$Runden = $Runden + 1
Sleep(2000)
ControlSend($hWnd,"","","ö")
Sleep(500)
ControlSend($hWnd,"","","{SPACE}")
Sleep(9000)
ControlSend($hWnd,"","","{w down}")
Sleep(2200)
ControlSend($hWnd,"","","{d down}")
Sleep(900)
ControlSend($hWnd,"","","{d up}")
Sleep(4000)
ControlSend($hWnd,"","","{w up}")
Sleep(4000)
;-Ende Weg aus Tquellen
;-Start Tquellen Kampf Script
ControlSend($hWnd,"","","{e down}")
Sleep(1500)
ControlSend($hWnd,"","","{e up}")
Sleep(500)
ControlSend($hWnd,"","","8")
Sleep(2500)
ControlSend($hWnd,"","","7")
Sleep(2500)
ControlSend($hWnd,"","","5")
Sleep(2500)
ControlSend($hWnd,"","","6")
Sleep(4000)
ControlSend($hWnd,"","","{w down}")
Sleep(2500)
ControlSend($hWnd,"","","{w up}")
Sleep(4000)
ControlSend($hWnd,"","","5")
Sleep(2500)
ControlSend($hWnd,"","","1")
Sleep(800)
ControlSend($hWnd,"","","2")
Sleep(1200)
ControlSend($hWnd,"","","{w down}")
Sleep(6000)
ControlSend($hWnd,"","","{w up}")
Sleep(500)
ControlSend($hWnd,"","","2")
Sleep(1000)
ControlSend($hWnd,"","","3")
Sleep(2000)
ControlSend($hWnd,"","","1")
Sleep(600)
ControlSend($hWnd,"","","c")
Sleep(500)
ControlSend($hWnd,"","","{SPACE}")
Sleep(3000)
ControlSend($hWnd,"","","2")
Sleep(1500)
ControlSend($hWnd,"","","5")
Sleep(2500)
ControlSend($hWnd,"","","1")
Sleep(2000)
ControlSend($hWnd,"","","4")
Sleep(3000)
ControlSend($hWnd,"","","2")
Sleep(1500)
ControlSend($hWnd,"","","1")
Sleep(3000)
ControlSend($hWnd,"","","2")
Sleep(3000)
ControlSend($hWnd,"","","1")
Sleep(1500)
;-Ende Tquellen Kmpf Script
;-Start Drop´s einsammeln
$Einsammeln = 0
Do
$Einsammeln = $Einsammeln + 1
ControlSend($hWnd,"","","{ö}")
Sleep(500)
ControlSend($hWnd,"","","{SPACE}")
Sleep(1000)
Until $Einsammeln = 4 ;Anzahl für´s aufheben
;-Ende Drop´s einsammeln
;-Start /resign
ControlSend($hWnd,"","","{Enter}")
Sleep(800)
ControlSend($hWnd,"","","{Up}")
Sleep(800)
ControlSend($hWnd,"","","{Enter}")
;-Ende /resign
Sleep(4000)
;-Start In den Aussenposten reisen
ControlClick($hWnd,"","","left",1,409,300)
Sleep(6000)
;-Ende In den Aussenposten reisen
Until $Runden = 24 ;Anzahl der Runden
;-Ende Farmen
;-Start Reise zur Gildenhalle
ControlSend($hWnd,"","","{g}")
Sleep(500)
ControlClick($hWnd,"","","left",1,281,55)
Sleep(8000)
;-Ende Reise zur Gildenhalle
;-Start Identifizieren
Opt("MouseClickDelay", 100)
ControlSend($hWnd, "", "", "{.}")
Sleep(500)
$ident_x = 40
$ident_y = 285
$Slot1_x = 40
$Slot1_y = 80
For $iy = $Slot1_y To $Slot1_y + 140 Step 45
For $ix = $Slot1_x To $Slot1_x + 160 Step 40
ControlClick($hWnd, "", "", "left", 2, $ident_x, $ident_y)
Sleep(300)
_MouseClick($hWnd, "left", $ix, $iy, 1, 80)
Next
Next
ControlSend($hWnd, "", "", "{.}")
;-Ende Identifizieren
Sleep(600000)
;-Start Weg zum Kaufmann
ControlSend($hWnd,"","","{d down}")
Sleep(100)
ControlSend($hWnd,"","","{d up}")
ControlSend($hWnd,"","","{r}")
Sleep(4400)
ControlSend($hWnd,"","","{d down}")
Sleep(1000)
ControlSend($hWnd,"","","{d up}")
Sleep(2500)
ControlSend($hWnd,"","","{v}")
ControlSend($hWnd,"","","{space}")
Sleep(3000)
;-Ende Weg zum Kaufmann
;-Start Verkaufen
ControlClick($hWnd,"","","left",1,500,40)
For $verkaufen = 1 To 20
ControlClick($hWnd,"","","left",1,640,525)
Sleep(500)
Next
;-Ende Verkaufen
;-Start Identkit verkaufen und neues kaufen
MouseClickDrag("left",36,315,43,108)
Sleep(1000)
ControlClick($hWnd,"","","left",1,500,40)
Sleep(1000)
ControlClick($hWnd,"","","left",1,640,525)
Sleep(1000)
ControlClick($hWnd,"","","left",1,426,40)
Sleep(1000)
ControlClick($hWnd,"","","left",2,472,230)
Sleep(1000)
MouseClickDrag("left",43,108,43,315)
;-Ende Identkit verkaufen und neues kaufen
sleep(2000)
;-Start Weg zur Truhe
ControlSend($hWnd,"","","{x}")
Sleep(1000)
ControlSend($hWnd,"","","{r}")
Sleep(3000)
ControlSend($hWnd,"","","{a down}")
Sleep(1550)
ControlSend($hWnd,"","","{a up}")
Sleep(5000)
ControlSend($hWnd,"","","{v}")
ControlSend($hWnd,"","","{Space}")
Sleep(3000)
;-Ende Weg zur Truhe
;-Start Gold in die Truhe legen
ControlClick($hWnd,"","","left",1,687,260)
Sleep(1000)
ControlClick($hWnd,"","","left",1,398,297)
Sleep(1000)
ControlClick($hWnd,"","","left",1,345,330)
Sleep(1000)
;-Ende Gold in Truhe legen
;-Start Fenster schließen
For $Fensterschliessen = 1 To 3
ControlSend($hWnd,"","","{Esc}")
Sleep(500)
Next
;-Ende Fenster schließen
;-Start Verlassen der Gildenhalle
ControlSend($hWnd,"","","{m}")
Sleep(2000)
ControlClick($hWnd,"","","left",1,630,550)
Sleep(7000)
;-Ende Verlassen der Gildenhalle
WEnd







