geostone
New member
- Joined
- Feb 6, 2005
- RedCents
- 0¢
well this is the macro i use for my druid healer when in groups. it does on thing perfectly and that is keep the group alive. some of the buffs it keeps up some it doesnt but the whole purpose i use it is to heal so here ya's go--
Rich (BB code):
#event MeHit "#*#hits YOU for#*#"
#event OutOfMana "Insufficient Mana to cast this spell!"
#event OutOfRange "Your target is out of range, get closer!"
#event Fizzle "#*#Your spell fizzles!#*#"
#event SkinBuffs "#*#Your skin returns to normal#*#"
#event FoE "#*#The avian spirit departs#*#"
#event Fizzle "#*#Your spell fizzles#*#"
#event Death "#*#You have entered#*#"
#event bracken "#*#The bracken falls away#*#"
#event might "#*#Your natural might fades#*#"
#include spell_routines.inc
Sub Main
/declare Healpct int outer 58
/declare Fastheal string outer Nature's Infusion
/declare Groupnum int outer
/declare i int local
/declare Delay int outer
/declare Casting string outer
:chkevent
/doevents
/varset Groupnum ${Group}
| *** AutoHeal ***
:Healcheck
/for i 1 to ${Group}
/if (${Group[${i}].PctHPs}<=${Healpct}) {
/if (${Group[${i}].PctHPs}<1) /goto :nextmember
/if (${Group[${i}].Class.Name.Equal["Warrior"]}) /goto :Tankheal
/if (${Group[${i}].Class.Name.Equal["Paladin"]}) /goto :Tankheal
/if (${Group[${i}].Class.Name.Equal["Shadow Knight"]}) /goto :Tankheal
/if (${Group[${i}].Class.Name.Equal["Monk"]}) /goto :Tankheal
/doevents
/goto :CasterHeal
:Tankheal
/target pc ${Group[${i}].Name}
/g Inc 'Super Duid' Incomplete Heal on %t in 10 seconds stay close or die trying!
/varset Casting Karana's Renewal
/call cast "Karana's Renewal" gem7 6s
/doevents
/varset Delay ${Math.Calc[${Spell[Karana's Renewal].MyCastTime}*10+10]}
/delay ${Delay}
/goto :nextmember
:Casterheal
/target pc ${Group[${i}].Name}
/g Incoming 'Super Druid' quickheal on %t!
/varset Delay ${Math.Calc[${Spell[${Fastheal}].MyCastTime}*10+25]}
/varset Casting ${Fastheal}
/call cast "${Fastheal}" gem8 3s
/doevents
/delay ${Delay}
/if (${Sit}==1) /sit
}
:nextmember
}
/next i
/goto :chkevent
/return
Sub Event_MeHit
/if (${Me.PctHPs}<=60 {
/target myself
/stand
/g Quickhealing 'Super Druid' %t!
/varset Casting Nature's Infusion
/cast "Nature's Infusion"
/doevents
/varset Delay ${Math.Calc[${Spell[Nature's Infusion].MyCastTime}*10+5]}
/delay ${Delay}
} else /if (${Me.PctHPs}<=40 AND ${Me.PctHPs}>25) {
/target myself
/stand
/g Fast Heal on %t!
/varset Delay ${Math.Calc[${Spell[${Fastheal}].MyCastTime}*10+25]}
/varset Casting ${Fastheal}
/cast "${Fastheal}"
/doevents
/delay ${Delay}
} else {
/stand
}
/return
Sub Event_FoE
/keypress back
/keypress F1
/delay 1s
/call cast "Flight of Eagles" gem3 4s
/delay 6s
/keypress esc
/return
Sub Event_SkinBuffs
/keypress back
/keypress F1
/delay 1s
/call cast "Brackencoat" gem3 4s
/delay 6s
/keypress esc
/return
Sub Event_might
/keypress back
/keypress F1
/delay 1s
/cast "Nature's Might"
/return
Sub Event_bracken
/keypress back
/keypress F1
/delay 1s
/cast "Legacy of Bracken" gem4 4s
/return
Sub Event_fizzle
/return DAMN_FIZZLE
/if (${Macro.Return.Equal["DAMN_FIZZLE"]}) /goto :Healcheck
Sub Event_OutOfRange
/g %t your OOR of the Super Druid!
/delay 1s
/return


