~ 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