Code: Select all
|arch.mac Auto-Archery
/zapvars
#turbo
#Event exp "experience!"
#Event Root "Your Earthen Roots spell has worn off."
#event haste "The quickening spirit departs"
#event eagle "The avian presence departs"
#Event Casting "You begin casting"
Sub Main(Arg)
/echo "Auto-Arch Macro has begun."
/declare startexp global
/declare startaaxp global
/declare currentxp global
/declare xpgain global
/declare currentaa global
/declare aagain global
/declare foragetoggle global
/declare targetarray array
/varset startexp ${Me.Exp}
/varset startaaxp ${Me.AAExp}
[color=red]/newif (${Defined[Arg]} && @arg==forage) {
/echo "Auto-Forage enabled"
/varset foragetoggle 1
}[/color]
:mainloop
/newif (${Me.Combat} && ${Target.ID} && ${Target.CleanName.NotEqual[${Me.Name}]}) /call Archery
[color=red] /newif $(@foragetoggle==1 && $(Me.AbilityReady[Forage]}) {
/doability Forage
/autoinventory
}[/color]
/doevents
/goto :mainloop
/return
Sub Archery
/attack off
/varset targetarray(0) ${Target.CleanName}
/varset targetarray(1) ${Target.Level}
/varset targetarray(2) ${Target.Name}
/varset targetarray(3) ${Target.ID}
/echo Fighting @targetarray(1) @targetarray(0)
/face nolook
:CloserAF
/ranged
[color=red] /newif (@foragetoggle==1 && $(Me.AbilityReady[Forage]}) {
/doability Forage
/autoinventory
}[/color]
/newif (${Target.Distance}<11 && $(Me.AbilityReady[Kick]} /doability Kick
/doevents
/newif (${Target.Distance}<11 && $(Me.AbilityReady[Disarm]} /doability Disarm
/newif ${Target.ID}!=@targetarray(3) /goto :EndAF
/doevents
/goto :CloserAF
/return
:EndAF
/echo @targetarray(1) @targetarray(0) is dead
/varset targetarray(3) 0
/keypress Num_5
/return
Sub Event_Root
/sit
/stand
/target id @targetarray(3)
/cast "Earthen Roots"
/delay 2s
/return
Sub Event_exp
/varset currentxp ${Me.AAExp}
/varcalc xpgain @currentxp-@startexp/3.30
/varset currentaa ${Me.AAExp}
/varcalc aagain @currentaa-@startaaxp/3.30
/popup "Gain: @xpgain% xp - @aagain% aa ## Cur: @currentxp% xp - $char(aa,exp)% aa"
/echo "Gain: @xpgain% xp - @aagain% aa ## Cur: @currentxp% xp - $char(aa,exp)% aa"
/varset startexp ${Me.AAExp}
/varset startaaxp ${Me.AAExp}
/return
Sub event_eagle
/cast "Eagle Eye"
/delay 5s
/return
Sub event_haste
/cast item "Eyepatch of Plunder"
/delay 4s
/return
sub Event_Casting
:checkcast
/delay 1
/newif ${Me.Casting} /goto :checkcast
/return


