Usage: /mac twist # # # # # #....#n
Usage: Where # can be any spell gem
Usage: Using a single param will not actually twist the song but instead it will just keep it playing and recast it in the advent of getting stunned.
Code: Select all
| twist.mac by: Virtuoso65
| MQData & MQ2DataVars complient V2.5
#event Loading "#*#LOADING, PLEASE WAIT...#*#"
#event Recover "#*#You miss a note, bringing your song to a close!#*#"
#event Recover "#*#You haven't recovered yet...#*#"
Sub MAIN
/declare a[${Macro.Params}] int outer 0
/declare nsongs int outer 0
/declare cursong int outer 0
/declare t0 timer outer 0
/declare pcount int outer 0
/declare bcount int outer 0
/varset nsongs ${Macro.Params}
/if (!${Defined[Param0]}) {
/echo Usage: /mac twisting # # # #....
/echo Usage: Where # is any Spell Gem number 1-8.
/end
}
/for pcount 0 to ${Macro.Params}
/if (${Defined[Param${pcount}]}) {
/varcalc bcount ${pcount}+1
/varset a[${bcount}] ${Param${pcount}}
/echo Song ${bcount}: ${Me.Gem[${Param${pcount}}]}
}
/Next pcount
/varset cursong 0
/varset t0 1
/if ((${Defined[Param0]})&&(!${Defined[Param1]})) /goto :loop2
:Loop1
/if (${t0}<=0) {
/stopsong
/delay 2
/varset t0 32
/varcalc cursong ${cursong}+1
/if (${cursong}>${nsongs}) /varset cursong 1
| /popup Song ${cursong}: ${Me.Gem[${a[${cursong}]}]}
/cast ${a[${cursong}]}
}
/doevents
/goto :Loop1
:loop2
/if (!${Bool[${Me.Casting}]}) {
/stopsong
/delay 1
/cast ${Param0}
/doevents
/delay 3
}
/goto :Loop2
/return
Sub Event_Loading
/endmacro
/return
Sub Event_Recover
/varcalc cursong ${cursong}-1
/varset t0 1
/return




