~ Toggles pause and DEL exits the script.
Note that this script is untested by me as of yet because I'm still just macroing Lesser Magic and have no need for it at the moment. If you use it and find that it works good, please post here and let us know.
Edit- I added an option to loop the entire spell list before resting. Updated to fix a couple of bugs.
Code:
Dim $a, $b, $c, $d, $e, $f, $g, $h, $i, $j, $k, $l, $m, $n, $o, $p, $q, $r, $s, $t, $u, $v, $w, $x, $y
Global $Paused
HotKeySet("`", "TogglePause")
HotKeySet("{DEL}", "Terminate")
$a = InputBox( "Question", "How many different spells to cast?", "1" )
If $a = 1 Then
$b = InputBox( "Question", "Hotbar for first spell?", "1" )
$c = InputBox( "Question", "Cast delay for first spell?", "1100" )
$d = InputBox( "Question", "How many times to repeat first spell?", "1" )
$e = InputBox( "Question", "Hotbar for Rest?", "0" )
$s = InputBox( "Question", "How long to Rest?", "155000" )
WinWaitActive( "Darkfall Online" )
Sleep( 2000 )
While 1
$r = 0
Sleep( 1000 )
Send( "R" )
Sleep( 500 )
Do
Call( "SpellOne" )
$r = $r + 1
Until $r = $d
Call( "Rest" )
WEnd
ElseIf $a = 2 Then
$b = InputBox( "Question", "Hotbar for first spell?", "1" )
$c = InputBox( "Question", "Cast delay for first spell?", "1100" )
$d = InputBox( "Question", "How many times to repeat first spell?", "1" )
$f = InputBox( "Question", "Hotbar for second spell?", "2" )
$g = InputBox( "Question", "Cast delay for second spell?", "1100" )
$h = InputBox( "Question", "How many times to repeat second spell?", "1" )
$y = InputBox( "Question", "How many times to repeat entire loop before resting?", "1" )
$e = InputBox( "Question", "Hotbar for Rest?", "0" )
$s = InputBox( "Question", "How long to Rest?", "155000" )
WinWaitActive( "Darkfall Online" )
Sleep( 2000 )
While 1
$r = 0
$t = 0
$x = 0
Sleep( 1000 )
Send( "R" )
Sleep( 1000 )
Do
Do
Call( "SpellOne" )
$r = $r + 1
Until $r = $d
$r = 0
Do
Call( "SpellTwo" )
$t = $t + 1
Until $t = $h
$t = 0
$x = $x +1
Until $x = $y
Call( "Rest" )
WEnd
ElseIf $a = 3 Then
$b = InputBox( "Question", "Hotbar for first spell?", "1" )
$c = InputBox( "Question", "Cast delay for first spell?", "1100" )
$d = InputBox( "Question", "How many times to repeat first spell?", "1" )
$f = InputBox( "Question", "Hotbar for second spell?", "2" )
$g = InputBox( "Question", "Cast delay for second spell?", "1100" )
$h = InputBox( "Question", "How many times to repeat second spell?", "1" )
$i = InputBox( "Question", "Hotbar for third spell?", "3" )
$j = InputBox( "Question", "Cast delay for third spell?", "1100" )
$k = InputBox( "Question", "How many times to repeat third spell?", "1" )
$y = InputBox( "Question", "How many times to repeat entire loop before resting?", "1" )
$e = InputBox( "Question", "Hotbar for Rest?", "0" )
$s = InputBox( "Question", "How long to Rest?", "155000" )
WinWaitActive( "Darkfall Online" )
Sleep( 2000 )
While 1
$r = 0
$t = 0
$t = 0
$x = 0
Sleep( 1000 )
Send( "R" )
Sleep( 1000 )
Do
Do
Call( "SpellOne" )
$r = $r + 1
Until $r = $d
$r = 0
Do
Call( "SpellTwo" )
$t = $t + 1
Until $t = $h
$t = 0
Do
Call( "SpellThree" )
$u = $u + 1
Until $u = $k
$u = 0
$x = $x + 1
Until $x = $y
Call( "Rest" )
WEnd
ElseIf $a = 4 Then
$b = InputBox( "Question", "Hotbar for first spell?", "1" )
$c = InputBox( "Question", "Cast delay for first spell?", "1100" )
$d = InputBox( "Question", "How many times to repeat first spell?", "1" )
$f = InputBox( "Question", "Hotbar for second spell?", "2" )
$g = InputBox( "Question", "Cast delay for second spell?", "1100" )
$h = InputBox( "Question", "How many times to repeat second spell?", "1" )
$i = InputBox( "Question", "Hotbar for third spell?", "3" )
$j = InputBox( "Question", "Cast delay for third spell?", "1100" )
$k = InputBox( "Question", "How many times to repeat third spell?", "1" )
$l = InputBox( "Question", "Hotbar for forth spell?", "4" )
$m = InputBox( "Question", "Cast delay for forth spell?", "1100" )
$n = InputBox( "Question", "How many times to repeat forth spell?", "1" )
$y = InputBox( "Question", "How many times to repeat entire loop before resting?", "1" )
$e = InputBox( "Question", "Hotbar for Rest?", "0" )
$s = InputBox( "Question", "How long to Rest?", "155000" )
WinWaitActive( "Darkfall Online" )
Sleep( 2000 )
While 1
$r = 0
$t = 0
$u = 0
$v = 0
$x = 0
Sleep( 1000 )
Send( "R" )
Sleep( 1000 )
Do
Do
Call( "SpellOne" )
$r = $r + 1
Until $r = $d
$r = 0
Do
Call( "SpellTwo" )
$t = $t + 1
Until $t = $h
$t = 0
Do
Call( "SpellThree" )
$u = $u + 1
Until $u = $k
$u = 0
Do
Call( "SpellFour" )
$v = $v + 1
Until $v = $n
$v = 0
$x = $x + 1
Until $x = $y
Call( "Rest" )
WEnd
ElseIf $a = 5 Then
$b = InputBox( "Question", "Hotbar for first spell?", "1" )
$c = InputBox( "Question", "Cast delay for first spell?", "1100" )
$d = InputBox( "Question", "How many times to repeat first spell?", "1" )
$f = InputBox( "Question", "Hotbar for second spell?", "2" )
$g = InputBox( "Question", "Cast delay for second spell?", "1100" )
$h = InputBox( "Question", "How many times to repeat second spell?", "1" )
$i = InputBox( "Question", "Hotbar for third spell?", "3" )
$j = InputBox( "Question", "Cast delay for third spell?", "1100" )
$k = InputBox( "Question", "How many times to repeat third spell?", "1" )
$l = InputBox( "Question", "Hotbar for forth spell?", "4" )
$m = InputBox( "Question", "Cast delay for forth spell?", "1100" )
$n = InputBox( "Question", "How many times to repeat forth spell?", "1" )
$o = InputBox( "Question", "Hotbar for fifth spell?", "5" )
$p = InputBox( "Question", "Cast delay for fifth spell?", "1100" )
$q = InputBox( "Question", "How many times to repeat fifth spell?", "1" )
$y = InputBox( "Question", "How many times to repeat entire loop before resting?", "1" )
$e = InputBox( "Question", "Hotbar for Rest?", "0" )
$s = InputBox( "Question", "How long to Rest?", "155000" )
WinWaitActive( "Darkfall Online" )
Sleep( 2000 )
While 1
$r = 0
$t = 0
$u = 0
$v = 0
$w = 0
$x = 0
Sleep( 1000 )
Send( "R" )
Sleep( 1000 )
Do
Do
Call( "SpellOne" )
$r = $r + 1
Until $r = $d
$r = 0
Do
Call( "SpellTwo" )
$t = $t + 1
Until $t = $h
$t = 0
Do
Call( "SpellThree" )
$u = $u + 1
Until $u = $k
$u = 0
Do
Call( "SpellFour" )
$v = $v + 1
Until $v = $n
$v = 0
Do
Call( "SpellFive" )
$w = $w + 1
Until $w = $q
$w = 0
$x = $x + 1
Until $x = $y
Call( "Rest" )
WEnd
Else
MsgBox( 0, "Alert", "You need at least 1 spell or less than 6 spells to cast." )
Exit
EndIf
Func SpellOne ( )
Sleep( 500 )
Send( $b )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $c )
EndFunc
Func SpellTwo ( )
Sleep( 500 )
Send( $f )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $g )
EndFunc
Func SpellThree ( )
Sleep( 500 )
Send( $i )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $j )
EndFunc
Func SpellFour ( )
Sleep( 500 )
Send( $l )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $m )
EndFunc
Func SpellFive ( )
Sleep( 500 )
Send( $o )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $p )
EndFunc
Func Rest( )
Sleep( 2000 )
Send( "R" )
Sleep( 500 )
Send( $e )
Sleep( 500 )
MouseClick( "Left" )
Sleep( $s )
Send( "{SPACE}" )
Sleep( 1000 )
EndFunc
Func TogglePause( )
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('Script is "Paused"',0,0)
WEnd
ToolTip("")
EndFunc
Func Terminate( )
Exit 0
EndFunc






