Problems with macro
Posted: Fri Apr 30, 2004 8:19 pm
Having trouble with it switching between tank and mob tarrgets really fast, mis targets for ds and not assisting after casting burnout. and when it comes to the time to recast DS, it sometimes mis targets because it is switching targets.
Code: Select all
#Event exp "You gain party experience!!"
#Event malosuccess "looks very uncomfortable."
#Event maloresist "Your target resisted the Malosinia spell."
#Event cast "You begin casting"
#Event rageon "has become ENRAGED"
#Event rageoff "is no longer enraged"
#Event burnout "Your pet's Burnout V spell has worn off."
#Event nuke1 "Nuke 1"
#event nuke2 "Nuke 2"
Sub Main
/declare assist outer
/echo Assisting ${Target}
/declare sentpet outer
/varset sentpet 0
/declare MaloCast outer
/varset MaloCast 0
/declare BoltCast outer
/varset BoltCast 0
/declare BoltCastB outer
/varset BoltCastB 0
/declare DSTimer timer
/varset DSTimer 0
/declare BurnOut outer
/varset BurnOut 0
/declare NukeAmount outer
/varset NukeAmount 1
:MainLoop
/assist Assist
/call BuffCheck
/if (${String[${DSTimer}].Equal[0]}) {
/delay 2
/target Assist
/delay 2
/if (${Target.Distance}<=149) {
/echo Casting Damage Shield on %t
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/cast "Flameshield of Ro"
/delay 5
/doevents
/varset DSTimer 7m
/assist Assist
}
}
/if (${String[${BurnOut}].Equal[0]}) {
/echo Casting Burnout V
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/delay 3s
/cast "Burnout V"
/delay 5
/doevents
/varset BurnOut 1
/assist Assist
}
/call ManaCheck
/if (${Target.ID} && ${Target.PctHPs}<=96) {
/if (${String[${Target.Type}].Equal[NPC]}) {
/if (${sentpet}==0) {
/pet attack
/varset sentpet 1
/echo Pet Sent
}
/if (${MaloCast}==0) {
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/cast "Malosinia"
/varset MaloCast 1
/echo Casting ${Me.Casting} on the bizatch!!!
/doevents
}
}
}
/if (${Target.PctHPs}<=75 && ${Target.PctHPs}>=50 && ${String[${Target.Type}].Equal[NPC]}) {
/if (${BoltCast}==0) {
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/cast "Firebolt of Tallon"
/varset BoltCast 1
/echo Nuking the bizatch with ${Me.Casting} !!!
/doevents
}
}
/if (${Target.PctHPs}<=40 && ${Target.PctHPs}>=20 && ${String[@NukeAmount].Equal[2]}) {
/if (${BoltCastB}==0) {
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/cast "Firebolt of Tallon"
/varset BoltCastB 1
/echo Nuking the bizatch with ${Me.Casting} for the second time!!!
/doevents
}
}
}
/doevents
/goto :MainLoop
/return
Sub Event_exp
/varset sentpet 0
/varset MaloCast 0
/varset BoltCast 0
/varset BoltCastB 0
/echo That bizatch is dead!!! Resetting Variables!!
/return
Sub Event_malosuccess
/gsay %t feels Malosinia.
/return
Sub Event_maloresist
/varset MaloCast 0
/echo Malosinia resisted, trying again
/delay 2s
/delay 3
/return
Sub ManaCheck
/if (${Me.PctMana}>=20) {
/return
}
/echo Only sending pet untill I get 80 mana
/gsay LoM...sitting through a few.
:NoManaLoop
/if (${Me.PctMana}>=80) {
/return
}
/assist ${Target}
/if (${Target.ID} && ${Target.PctHPs}<=96) {
/if (${String[${Target.Type}].Equal[NPC]}) {
/if (${sentpet}==0) {
/pet attack
/varset sentpet 1
/echo Pet Sent
}
}
}
/doevents
/goto :NoManaLoop
/return
Sub Event_cast
:CastWait
/if (!${String[${Me.Casting}].Equal[NULL]}) {
/goto :CastWait
}
/delay 5
/sit
/delay 2s
/return
Sub Event_rageon
/echo %t is enraged. Backing pet off.
/pet back off
/return
Sub Event_rageoff
/doevents flush
/echo %t is no longer enraged. Sending pet.
/pet attack
/return
Sub BuffCheck
/if (!${Me.Buff[Elemental Draw Recourse].ID}) {
/echo Casting Elemental Draw
/cast "Elemental Draw"
/delay 5
/doevents
}
/if (!${Me.Buff[Shield of Maelin].ID}) {
/echo Casting Shield of Maelin
/cast "Shield of Maelin"
/delay 5
/doevents
}
/if (!${Me.Buff[Xegony's Phantasmal Guard].ID}) {
/echo Casting Xegony's Phantasmal Guard
/cast "Xegony's Phantasmal Guard"
/delay 5
/doevents
}
/return
Sub Event_burnout
/echo Casting Burnout V
/if (${String[${Me.State}].Equal[SIT]}) {
/stand
/delay 1s
}
/cast "Burnout V"
/doevents
/return
Sub Event_nuke1
/varset NukeAmount 1
/echo Nuking Once Per Fight
/return
Sub Event_Nuke2
/varset NukeAmount 2
/echo Nuking Twice Per Fight
/return