AutoHotKey Stuff

Published 08-25-2017 04:02:38

(From Old Darkfall Online Scripts)

A simple macro loop

#IfWinActive Darkfall Online
$+Lbutton::
Loop
{
Send a ;row2
sleep 500
send {Lbutton}
sleep 4000
send w ;row3
sleep 500
send {lbutton}
sleep 4000
send t ;row4
sleep 500
send {lbutton}
sleep 4000
send g ;row5
sleep 500
send {lbutton}
sleep 4000
}

ATS test

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#IfWinActive, Darkfall Unholy Wars
; !=alt
; +=shift
; ^=ctrl
; ~ = Pass to DF
;Weapon Global Variables
;Create the staff, archery and melee global variables, 1 means that the weapon is active
staff := 0
archery := 0
Swordboard := 0
;Equip Functions
Shift::Alt
~*!RButton::Sword_Board()    ;keybind in game
~*::Bow()     ;keybind in game
~*!LButton::Staff()   ;keybind in game
Sword_Board()
{
global
staff := 0
archery := 0
Swordboard := 1
return
}
Staff()
{
global
staff := 1
archery := 0
Swordboard := 0
return
}
Bow()
{
global
staff := 0
archery := 1
Swordboard := 0
return
}
Rbutton::
if (staff = 1)  ;if staff is unsheathed then Rbutton is activate right radial
{
sendinput, {\ down}  ;right radial activate key
KeyWait, Rbutton
sleep, 25
sendinput, {\ up}
}
else if (swordboard = 1)   ;if sword n board is out this is parry
{
sendinput, {G down}  ;parry
KeyWait, Rbutton
sleep, 25
sendinput, {G up}    ;parry
}
return

Autosprint

#IfWinActive Darkfall Online
~*E::
{
Sendinput {F12 down} ;sprint
}
return

Autoswing/click

#If !isMouseShown() and WinActive("Darkfall Online")
isMouseShown()
{
StructSize := A_PtrSize + 16
VarSetCapacity(InfoStruct, StructSize)
NumPut(StructSize, InfoStruct)
DllCall("GetCursorInfo", UInt, &InfoStruct)
Result := NumGet(InfoStruct, 8)
}
$^Lbutton::
Loop
{
if not GetKeyState("Lbutton", "P")
break
Send {Lbutton}
sleep 1
}
return

Mousewheel

#IfWinActive, Darkfall Online
WheelUpBool = 0
WheelDownBool = 0
PauseBool = 0
WheelUp::
PauseBool = 0
WheelDownBool = 0
if WheelUpBool = 0
{
Send, {numpad1}	;blackbolt
send, {f1} 		;magic home
WheelUpBool = 1
}
else
{
send, {u}		;unsheath
}
return
WheelDown::
WheelUpBool = 0
PauseBool = 0
if WheelDownBool = 0
{
Send, {numpad2}	;greatsword
send, {f1}		;magic home
WheelDownBool = 1
}
else
{
send, {u}
}
Send, ^{numpad6} 	;ww gs
Send, ^{numpad7} 	;ww knives
return
TAB::
WheelUpBool = 0
WheelDownBool = 0
if PauseBool = 0
{
Send, {numpad3}	;bow
PauseBool = 1
}
else
{
Send, {u}
}
Sleep, 500
Send, ^{numpad1} 	;disabling shot
return