#turbo 60
|** For ease of use, I suggest making an includes folder inside your macro folder.
\macros\includes\
For this macro, set your XTarget 1 to be your Group Assist's Target.
To assist your group tank when mob is at 95% hp without using your default values:
/mac mage group 95
[Memmed Spells]
Spell1=Gather Potential Rk. II
Spell2=Bolt of Rhyolite Rk. III
Spell3=Spear of Magma Rk. II
Spell4=Fickle Flare Rk. II
Spell5=Thaumatize Pet Rk. III
Spell6=Ruinous Servant Rk. II
Spell7=Twincast Rk. III
Spell8=Pet/Pet buffs
Spell9=Surge of Shadowflares Rk. II
Spell10=Buffs/ Self Buffs
Spell11=Voracious Flames Rk. II
Spell12=Burning Veil Rk. II
**|
#include \includes\SelfBuffs.inc
#include \includes\AAs.inc
#include \includes\ClickyNukes.inc
#include \includes\IgnoreList.inc
#include \includes\CheckMana.inc
#include \includes\Buffs.inc
#include \includes\Aura.inc
#include \includes\Nukes.inc
#include \includes\CheckTarget.inc
#include \includes\Camp.inc
#include \includes\Merc.inc
#include \includes\ImHit.inc
#include \includes\Pet.inc
#include \includes\AddHandler.inc
#include \includes\Debuffs.inc
#include \includes\ClickyMaintenance.inc
#include spell_routines.inc
#event EndMacro "It will take about 5 more seconds to prepare your camp."
Sub Main
|####################################################|
|# Start Load declares - Mandatory to build ini
/declare LoadStuff string outer ${Param0}
/declare NeedLoad bool outer FALSE
/if (${LoadStuff.Equal[load]}) {
/varset NeedLoad TRUE
/echo Building an ini
}
|# End Load declares
|####################################################|
|#########################################################################|
|# Start CheckTarget.inc declares - Mandatory for CheckTarget.inc
/if (${Param0.Length}) /declare AssistPC string outer ${Param0}
/if (${Param1.Length}) /declare AssistAt int outer ${Param1}
/if (${Param2.Length}) /declare AssistPC2 string outer ${Param2}
|# End CheckTarget.inc declares
|#########################################################################|
|##########################################################################|
|# Announce: Mandatory if you want to announce spells/skills/discs/etc
/declare EchoAnnounce bool outer TRUE
|###########################################################################|
|#################|
|# Load settings #|
/call Load
|#################|
:mainloop
/doevents
/if (${Me.Hovering}||${Window[tradewnd].Open}||${Window[lootwnd].Open}||${Me.State.Equal[BIND]}||${Me.Invis}||${Zone.ID}
==344) /goto :mainloop
/call Always
/if (${AddCount}) /call Combat
/if (${Me.CombatState.Equal[Combat]}||${Me.Combat}) /call Combat
/if (${Me.CombatState.NotEqual[Combat]} && !${TarID}) /call Rest
/doevents
/if (!${NeedLoad}) /goto :mainloop
:onExit
/echo Ending ${Macro.Name}
/return
Sub Always
/call AddHandler
/call CheckTarget3
/if (${Group.MainAssist.ID} && !${Raid.Members} && ${Me.XTarget[1].Type.NotEqual[Group Assist Target]}) /setrole 1 "Group
Assist Target"
/if (${Raid.Members} && ${Me.XTarget[1].Type.NotEqual[Raid Assist 1 Target]}) /setrole 1 "Raid Assist 1 Target"
/if (${TarID} && (!${Target.ID}||${Target.ID}!=${TarID}) && !${Me.Casting.ID}) /tar id ${TarID}
/call CheckMana
/return
Sub Combat
/call CheckMana
/if (${DebuffTotal}) /call Debuffs
/call PetAttack
/call ClickyNukes
/call AAs
/call Nuke
/call Merc
/call Buffwatch
/return
Sub Rest
/call Checktarget3
/call Aura
/call CheckMana
/call SelfBuffs
/call PetBuffs
/call Buffs
/if (${Camp_Zone}==${Zone.ID} && ${Me.CombatState.Equal[ACTIVE]} && ${UseCamp}) /call MoveToLoc ${YLOC} ${XLOC}
/call ClickyMaintenance
/return
Sub Load
/call NukeLoad
/call DebuffsLoad
/call SelfBuffsLoad
/call AAsLoad
/call IgnoreLoad
/call ClickyNukesLoad
/call AuraLoad
/call CheckManaLoad
/call CheckTargetLoad
/call BuffsLoad
/call MercLoad
/call ImHitLoad
/call PetLoad
/call CampLoad
/call AddHandlerLoad
/return
Sub Event_EndMacro
/echo Ending macro so you don't crash at character select!
/end
/return
/return