Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; ---------------------------------------
- ; Dragon's Dogma Online - Sorc TAS
- ; ---------------------------------------
- #NoEnv
- #IfWinActive Dragon's Dogma Online
- #InstallKeybdHook
- #SingleInstance Force
- SendMode Event
- global SpellExecution := 0
- global MeteorFallProgress := 0
- ; ---------------------------------------
- ; Breakout
- ; Because this script has lots of
- ; long-running input blocking functions,
- ; we want to be able to abort.
- ; ---------------------------------------
- $*Space::
- if (SpellExecution == 1) {
- Loop, 2
- {
- SendInput {Space Down}
- SendInput {Space Up}
- }
- ReloadScript()
- } else {
- SendInput {Space down}
- KeyWait, Space
- SendInput {Space up}
- }
- return
- $*Space UP::HotKey, $*Space, On
- XButton1::ReloadScript()
- F4::Suspend
- ; ---------------------------------------
- ; Keys
- ; ---------------------------------------
- $*1::MeteorFall("$*1")
- $*1 UP::Hotkey, $*1, On
- $*2 UP::Hotkey, $*2, On
- ; ---------------------------------------
- ; Key Functions
- ; ---------------------------------------
- MeteorFall(key)
- {
- if (MeteorFallProgress == 0) {
- MeteorFall0(key)
- } else if (MeteorFallProgress == 1) {
- MeteorFall1()
- } else if (MeteorFallProgress == 2) {
- MeteorFall2()
- } else if (MeteorFallProgress == 3) {
- MeteorFall3()
- } else {
- MeteorFallProgress := 0
- }
- return
- }
- MeteorFall0(key)
- {
- CastSpell(3)
- SpellInit(key)
- DDON_MM(0, -8)
- DDON_MM(0, 8)
- DDON_MM(8, 0)
- DDON_MM(-8, -6)
- DDON_MM(0, 8)
- DDON_MM(8, -4)
- DDON_MM(-8, 0)
- DDON_MM(0, 8)
- DDON_MM(1, -8)
- DDON_MM(-8, -4)
- DDON_MM(0, -8)
- DDON_MM(1, 8)
- DDON_MM(1, -8)
- Loop, 2 ; weird broken shit
- {
- DDON_MM(0, 8)
- DDON_MM(8, -4)
- }
- MeteorFallProgress := 1
- return
- }
- MeteorFall1()
- {
- if (MeteorFallProgress == 1) {
- DDON_MM(-2, -8)
- DDON_MM(0, 8)
- DDON_MM(8, -2)
- DDON_MM(8, -8)
- DDON_MM(4, 8)
- DDON_MM(-8, 2)
- DDON_MM(2, -8)
- DDON_MM(8, -8)
- DDON_MM(-8, -8)
- DDON_MM(-2, 8)
- DDON_MM(2, 8)
- DDON_MM(2, -8)
- DDON_MM(0, 8)
- DDON_MM(8, 0)
- MeteorFallProgress := 2
- return
- }
- }
- MeteorFall2()
- {
- If (MeteorFallProgress == 2) {
- DDON_MM(-8, 2)
- DDON_MM(8, -4)
- DDON_MM(-8, 2)
- DDON_MM(0,-8)
- DDON_MM(8, 4)
- DDON_MM(8, 0)
- DDON_MM(-8, -4)
- DDON_MM(8, -6)
- DDON_MM(-8, 0)
- DDON_MM(8, 2)
- DDON_MM(2, 8)
- DDON_MM(8, -4)
- DDON_MM(-8, 2)
- DDON_MM(8, 4)
- DDON_MM(8, -4)
- DDON_MM(0, -8)
- DDON_MM(0, 8)
- DDON_MM(0, -8)
- DDON_MM(-8, 0)
- DDON_MM(8, 0)
- DDON_MM(8, 4)
- DDON_MM(-8, 4)
- DDON_MM(-8, -4)
- DDON_MM(8, -4)
- DDON_MM(-8, 4)
- DDON_MM(8, 4)
- DDON_MM(8, -8)
- DDON_MM(-2, -8)
- DDON_MM(-8, -2)
- DDON_MM(8, 0)
- DDON_MM(-8, 2)
- DDON_MM(0, 8)
- DDON_MM(2, -8)
- DDON_MM(8, -6)
- DDON_MM(-8, -6)
- DDON_MM(-2, 8)
- DDON_MM(2, 8)
- DDON_MM(-2, -8)
- DDON_MM(2, -8)
- DDON_MM(-8, 0)
- DDON_MM(0, 8)
- DDON_MM(8, -2)
- DDON_MM(2, -8)
- DDON_MM(8, -6)
- DDON_MM(-8, -6)
- DDON_MM(-2, 8)
- DDON_MM(2, 8)
- DDON_MM(-8, 2)
- DDON_MM(8, 8)
- DDON_MM(8, -8)
- DDON_MM(0, -8)
- DDON_MM(0, 8)
- DDON_MM(0, -8)
- DDON_MM(2, -8)
- DDON_MM(-8, -8)
- DDON_MM(8, 0)
- DDON_MM(-8, 0)
- DDON_MM(8, 6)
- DDON_MM(-8, 6)
- DDON_MM(-8, -4)
- DDON_MM(0, -8)
- DDON_MM(4, -8)
- MeteorFallProgress := 3
- return
- }
- }
- MeteorFall3()
- {
- if (MeteorFallProgress == 3)
- {
- DDON_MM(4, -8)
- MeteorFallProgress := 0
- SpellCleanup()
- }
- }
- Frigor(key)
- {
- SpellInit(key)
- DDON_MM(-8, -8)
- DDON_MM(8, -8)
- DDON_MM(8, 4)
- DDON_MM(-8, -8)
- DDON_MM(0, 8)
- SpellCleanup()
- return
- }
- ; ---------------------------------------
- ; Other Functions
- ; ---------------------------------------
- SpellInit(key)
- {
- SpellExecution := 1
- Hotkey, %key%, Off
- Sleep 100
- SendInput {MButton Down}
- Sleep 1
- SendInput {MButton Up}
- Sleep 100
- BlockInput, MouseMove
- return
- }
- SpellCleanup()
- {
- BlockInput, MouseMoveOff
- SpellExecution := 0
- return
- }
- SpellTransition()
- {
- Loop, 2
- {
- SendInput {MButton down}
- Sleep 1
- SendInput {Mbutton up}
- Sleep 1
- }
- }
- CastSpell(slot)
- {
- if (slot == 3) {
- SendInput {LCtrl Down}
- Sleep 1
- SendInput {LButton Down}
- Sleep 1
- SendInput {LButton Up}
- Sleep 1
- SendInput {LCtrl Up}
- Sleep 1
- }
- }
- ; Kept missing input delta, this is the solution...
- DDON_MM(x, y, delay:=1, speed:=0)
- {
- Loop, 5
- {
- MouseMove, %x%, %y%, %speed%, R
- Sleep %delay%
- }
- return
- }
- ReloadScript() {
- Run %A_AhkPath% "C:\Users\ckx\Desktop\test.ahk"
- ExitApp
- }
Advertisement
Add Comment
Please, Sign In to add comment