hoppy96pgtbs
( o Y o )
yes, I would rather them die I suppose. instead of running back and forth to the same spots over and over and casting spells looking like robots lol.
had the same thing.. yesterday had a gm zone in, so i quickly got the toons killed. he followed me out into lava and said better luck next time.. now today he zones in again on me and says " trying your luck?" .... now what do you make of that one?
/target A Weary Traveler
/If (${Target.Distance}>40 && ${Zone.ID}==32) {
/warp t
/keypress back hold
/delay 2
/keypress back
}
I just went back to the old code and it hasn't happened on me in several hours. Will update whether or not that remains workable.
eqisdead
|Naggy.mac v2.10 Coding by Fry, Z166204 Booges, Taron and JoeK
|Inspired by whycantiwin1
|Updated October 12nd, 2006
|
|-*-This macro is to be only posted on MMOBugs.com-*-
|
|Usage: Please edit NaggyChars.ini with your characters names.
| When entering mission for first time, spend your AA's
| and click save. The macro will auto load your saved AA's
| Next Mission. Also make Kick Hotkey for Nagafen and Harm
| Touch hotkey for Tranixx.
| Start the macro in Lavastorm next to "a weary traveler".
| Start the Nagafen macro last.
#Chat group
#Chat tell
#Event Lastwave "#*#great red dragon resides within his lair#*#"
#Event Slain "#*#You have been slain by#*#"
#Event NoMonster "#*#You may not enter the mission zone until you have chosen a monster#*#"
#Event Camping "#*#It will take you about 25 seconds to prepare#*#"
#Event NoAAs "You do not have an ability set saved for this monster character."
#Event None "You do not currently have any task replay timers."
#Event Finished "'Defending the Lair' replay timer: 0d:0h:#1#m remaining."
#Event Incoming "A greedy invader yells out, 'Everyone ready? Rez the fallen now out of AE range. One, two, three -- CHARGE! WAVE GO NOW!'"
#Event SomeTell "#*#tells you#*#"
Sub Main
|--------------------------------------------------------------------
|##Between quotes type what people should say to you to get an invite
|--------------------------------------------------------------------
/declare Password string outer "PASSWORD"
/Echo +============*#*==================+
/Echo MMOBugs.com Naggy MM Automater V2.10
/Echo +============*#*==================+
/declare targetid int outer 0
/declare Template string outer Unknown
/declare missiondone int outer 0
/declare missioncounter int outer 0
/declare success int outer 0
/declare fail int outer 0
/declare MyAAExp float outer ${Math.Calc[${Me.AAPointsTotal}*100+${Me.PctAAExp}]}
/declare MyExp float outer ${Math.Calc[${Me.Level}*100+${Me.PctExp}]}
/declare TotalAAExp float outer 0.00
/declare TotalExp float outer 0.00
/declare WaveNumber int outer 0
/declare loopcount int outer 0
/squelch /plugin MQ2MoveUtils
/squelch /plugin MQ2Exchange
/squelch /plugin MQ2PiggyZone
/squelch /plugin MQ2Melee unload
/squelch /plugin MQ2AutoSkills unload
/if (${Ini[naggychars.ini,NaggyChars,Lord Nagafen,NULL].Equal[${Me.Name}]}) /varset Template Lord Nagafen
/if (${Ini[naggychars.ini,NaggyChars,Priest Of Nagafen1,NULL].Equal[${Me.Name}]}) /varset Template Priest Of Nagafen
/if (${Ini[naggychars.ini,NaggyChars,Priest Of Nagafen2,NULL].Equal[${Me.Name}]}) /varset Template Priest Of Nagafen2
/if (${Ini[naggychars.ini,NaggyChars,Priest Of Nagafen3,NULL].Equal[${Me.Name}]}) /varset Template Priest Of Nagafen3
/if (${Ini[naggychars.ini,NaggyChars,King Tranixx,NULL].Equal[${Me.Name}]}) /varset Template King Tranixx
/if (${Ini[naggychars.ini,NaggyChars,Magus Rokyl,NULL].Equal[${Me.Name}]}) /varset Template Magus Rokyl
/if (${Ini[naggychars.ini,NaggyChars,Warlord Skarlon,NULL].Equal[${Me.Name}]}) /varset Template Warlord Skarlon
:main
/doevents
/call GM
/if (${Template.Equal[Unknown]}) {
/echo Character Template Unknown. Please Edit
/echo NaggyChars.ini And Insert Your Character Names.
/echo Macro Ended
/end
}
/if (${Zone.ID}==27) {
/varset WaveNumber 0
/varcalc TotalAAExp ${TotalAAExp}+${Me.AAPointsTotal}*100+${Me.PctAAExp}-${MyAAExp}
/varcalc TotalExp ${TotalExp}+${Me.Level}*100+${Me.PctExp}-${MyExp}
/echo XP Gained ${Math.Abs[${Math.Calc[${Me.Level}*100+${Me.PctExp}-${MyExp}]}]}% - Total XP Gained ${Math.Abs[${TotalExp}]}%
/echo AA XP Gained ${Math.Abs[${Math.Calc[${Me.AAPointsTotal}*100+${Me.PctAAExp}-${MyAAExp}]}]}% - Total AA XP Gained ${Math.Abs[${TotalAAExp}]}%
/echo I am ${Me.PctExp}% through level ${Me.Level} And ${Me.PctAAExp}% through my next AA.
/echo I have ${Me.AAPointsTotal} AA's spent and ${Me.AAPoints} AA's banked.
/varcalc MyAAExp ${Me.AAPointsTotal}*100+${Me.PctAAExp}
/varcalc MyExp ${Me.Level}*100+${Me.PctExp}
/if (${Template.Equal[Lord Nagafen]}) /call Event_None
/call Waitforall
/if (${Template.Equal[Lord Nagafen]}) /call MissionSub
/call TemplateSelection
/call EnterMission
/if (${Zone.ID}==32) {
/call BuyAAs
}
/cleanup
/call Fight
/if (${Me.Race.Name.Equal[Dragon]} && ${Me.Class.Name.Equal[Warrior]}) {
/tasktimer
/delay 5s
}
:waitfortimer
/doevents
/delay 10s
/if (${Zone.ID}==32) /goto :waitfortimer
/if (${missiondone}==0) {
/varcalc fail ${fail}+1
/echo Mission Failed
/echo Successful Missions: ${success}
/echo Failed Missions: ${fail}
}
}
/if (${Zone.ID}==32) {
/if (${Me.Race.Name.Equal[Dragon]} && ${Me.Class.Name.Equal[Warrior]}) {
/call Nagafen
}
/if (${Me.Race.Name.Equal[Giant]} && ${Me.Class.Name.Equal[Cleric]}) {
/call Priest1
}
/if (${Me.Race.Name.Equal[Giant]} && ${Me.Class.Name.Equal[Shadow Knight]}) {
/call Tranixx
}
/if (${Me.Race.Name.Equal[Giant]} && ${Me.Class.Name.Equal[Wizard]}) {
/call Magus
}
/if (${Me.Race.Name.Equal[Giant]} && ${Me.Class.Name.Equal[Warrior]}) {
/call Warlord
}
}
/if (${Zone.ID}!= 27 && ${Zone.ID}!= 32) {
/echo Please Start This Macro In Lavastorm Mountains Next To "a weary traveler"
/end
}
/goto :main
/return
Sub Waitforall
/declare tempvar int local
:wait
/delay 1
/if (${Zone.ID}!=27) /goto :wait
/for tempvar 1 to ${Group.Members}
/if (!${Group.Member[${tempvar}].ID}) /goto :wait
/next tempvar
/return
Sub TemplateSelection
:wait
/delay 3s
/doevents
/if (${Window[TaskTemplateSelectWnd].Open}) {
/delay 3s
/call TemplateSelect
/return
}
/if (!${Template.Equal[Lord Nagafen]}) /goto :wait
/return
Sub MissionSub
/if (${Me.Sitting}) /stand
/target A Weary Traveler
/If (${Target.Distance}>40 && ${Zone.ID}==32) {
/squelch /moveto loc 2720 -96
/delay 10s !${Me.Moving}
}
/face
/delay 2s
/squelch /stick 10
/delay 2s
/squelch /stick off
/say Fierce Battles
/delay 3s
/if (!${Window[TaskTemplateSelectWnd].Open}) /call Wait
/delay 1s
/notify TaskTemplateSelectWnd TaskTemplateSelectListRequired listselect ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListRequired].List[Lord Nagafen]}
/delay 5
/notify TaskTemplateSelectWnd TaskTemplateSelectListRequired leftmouse ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListRequired].List[Lord Nagafen]}
/delay 5
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 1s
/return
Sub EnterMission
/doevents flush
/if (${Me.Sitting}) /stand
/target A Weary Traveler
/If (${Target.Distance}>40 && ${Zone.ID}==32) {
/squelch /moveto loc 2720 -96
/delay 10s !${Me.Moving}
}
/face
/delay 2s
/squelch /stick 10
/delay 2s
/squelch /stick off
/cleanup
/delay 10s
/say Imagine
/delay 10s
/if (${Zone.ID}==27) /say Imagine
/delay 2s
/doevents
/call ZonerNaglair
/return
sub ZonerNaglair
:waitforzone
/if (${Zone.ID}!=32) /goto :waitforzone
/delay 5s
/varcalc missioncounter ${missioncounter}+1
/echo Entered Mission ${missioncounter}.
/return
Sub Fight
/squelch /target clear
/if (${Template.Equal[Lord Nagafen]}) {
/call Nagafen
}
/if (${Template.Equal[Priest Of Nagafen]}) {
/call Priest1
}
/if (${Template.Equal[Priest Of Nagafen2]}) {
/call Priest1
}
/if (${Template.Equal[Priest Of Nagafen3]}) {
/call Priest1
}
/if (${Template.Equal[King Tranixx]}) {
/call Tranixx
}
/if (${Template.Equal[Magus Rokyl]}) {
/call Magus
}
/if (${Template.Equal[Warlord Skarlon]}) {
/call Warlord
}
/return
Sub Tranixx
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1433 -734
/delay 5s !${Me.Moving}
/varset missiondone 0
/declare atcamp int local 0
}
:meleeloop
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (!${SpawnCount[npc invading]} && !${atcamp} && ${Zone.ID}==32) {
/squelch /moveto loc -1433 -734
/delay 5s !${Me.Moving}
/face heading -23
/varset atcamp 1
}
/doevents
/if (${missiondone}) /goto :endcombat
/assist ${Spawn[pc race Dragon]}
/if (${Target.ID} && ${Target.Race.Name.NotEqual[Chest]}) {
/varset targetid ${Target.ID}
/varset atcamp 0
/attack on
/squelch /stick 12
/goto :combatloop
}
/if (${Target.Race.Name.Equal[Chest]}) /squelch /target clear
/goto :meleeloop
:combatloop
/doevents
/if (${Me.Y}>-1360 && ${Zone.ID}==32) {
/attack off
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1456]} ${Math.Calc[${Math.Rand[10]}-746]}
/delay 5s !${Me.Moving}
/squelch /target clear
}
/if (!${Target.ID} || ${Target.ID}!=${targetid} || ${Target.Type.NotEqual[NPC]}) {
/squelch /target clear
/attack off
/goto :meleeloop
}
/if (${Me.AltAbilityReady[Feral Rage]} && ${SpawnCount[npc invading radius 20]}>5 ) {
/squelch /stick pause
/alt act 1056
/delay 1s
/delay 10s !${Me.Casting.ID}
/squelch /stick unpause
}
/if (${Me.AltAbilityReady[Shroud of Pain]} && !${Me.Casting.ID} && ${Me.PctMana}>25 && !${Me.Buff[Shroud of Pain Recourse].ID}) {
/squelch /stick pause
/squelch /face fast
/alt act 4176
/delay 5
/delay 10s !${Me.Casting.ID}
/squelch /stick unpause
}
/if (${Me.AltAbilityReady[Abduction of Stength]} && !${Me.Casting.ID} && ${Me.PctMana}>25 && !${Me.Buff[Ab. of Strength Recourse].ID}) {
/squelch /stick pause
/squelch /face fast
/alt act 4177
/delay 5
/delay 10s !${Me.Casting.ID}
/squelch /stick unpause
}
/if (${Me.AltAbilityReady[Mental Corruption]} && !${Me.Casting.ID} && ${Me.PctMana}>25 && !${Me.Buff[Mental Corruption].ID}) {
/squelch /stick pause
/squelch /face fast
/alt act 4178
/delay 5
/delay 10s !${Me.Casting.ID}
/squelch /stick unpause
}
/goto :combatloop
:endcombat
/squelch /target clear
/return
Sub Magus
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1413 -720
/delay 5s !${Me.Moving}
/varset missiondone 0
/declare meleetarget int local 0
/declare atcamp int local 0
}
:meleeloop
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (!${SpawnCount[npc invading]} && !${atcamp} && ${Zone.ID}==32) {
/squelch /moveto loc -1413 -720
/delay 5s !${Me.Moving}
/face heading -23
/varset atcamp 1
}
/doevents
/if (${missiondone}) /goto :endcombat
/assist ${Spawn[pc race Dragon]}
/if (${Target.ID} && ${Target.Race.Name.NotEqual[Chest]}) {
/varset targetid ${Target.ID}
/varset meleetarget 0
/varset atcamp 0
/goto :combatloop
}
/if (${Target.Race.Name.Equal[Chest]}) /squelch /target clear
/goto :meleeloop
:combatloop
/squelch /face fast
/doevents
/if (${Me.Y}>-1360 && ${Zone.ID}==32) {
/attack off
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1456]} ${Math.Calc[${Math.Rand[10]}-746]}
/delay 5s !${Me.Moving}
/squelch /target clear
}
/if (!${Target.ID} || ${Target.ID}!=${targetid} || ${Target.Type.NotEqual[NPC]}) {
/squelch /target clear
/attack off
/goto :meleeloop
}
/if ((${Me.PctMana}<26 || ${Target.PctHPs}<30) && !${meleetarget}) {
/varset meleetarget 1
/attack on
/squelch /stick 12
/varset atcamp 0
}
/if (${Me.AltAbilityReady[Rend]} && !${Me.Casting.ID} && ${Me.PctMana}>25 && !${meleetarget}) {
/alt act 4172
/delay 1s
/delay 20s !${Me.Casting.ID}
}
/goto :combatloop
:endcombat
/return
Sub Warlord
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Zone.ID}==32) {
/unequip mainhand
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1419 -729
/delay 5s !${Me.Moving}
/declare atcamp int local 0
/varset missiondone 0
}
:meleeloop
/doevents
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (!${SpawnCount[npc invading]} && !${atcamp} && ${Zone.ID}==32) {
/squelch /moveto loc -1419 -729
/delay 5s !${Me.Moving}
/face heading -23
/varset atcamp 1
}
/if (${missiondone}) /goto :endcombat
/assist ${Spawn[pc race Dragon]}
/if (${Target.ID} && ${Target.Race.Name.NotEqual[Chest]}) {
/varset targetid ${Target.ID}
/varset atcamp 0
/attack on
/squelch /stick 12
/goto :combatloop
}
/if (${Target.Race.Name.Equal[Chest]}) /squelch /target clear
/goto :meleeloop
:combatloop
/doevents
/if (${Me.Y}>-1360 && ${Zone.ID}==32) {
/attack off
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1456]} ${Math.Calc[${Math.Rand[10]}-746]}
/delay 5s !${Me.Moving}
/squelch /target clear
}
/if (!${Target.ID} || ${Target.ID}!=${targetid} || ${Target.Type.NotEqual[NPC]}) {
/squelch /target clear
/attack off
/goto :meleeloop
}
/if (${Me.AltAbilityReady[Feral Rage]} && ${SpawnCount[npc invading radius 20]}>5) {
/squelch /stick pause
/alt act 1056
/delay 1s
/delay 10s !${Me.Casting.ID}
/squelch /stick unpause
}
/goto :combatloop
:endcombat
/return
Sub Nagafen
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1429 -777
/delay 5s !${Me.Moving}
/declare atcamp int local 0
/varset missiondone 0
}
:naggymainloop
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Target.Race.Name.Equal[Chest]}) /squelch /target clear
/doevents
/if (${Target.ID}==${Me.ID}) /target clear
/if (!${SpawnCount[npc invading]} && !${atcamp} && ${Zone.ID}==32) {
/squelch /moveto loc -1429 -777
/delay 10s !${Me.Moving}
/face heading -23
/varset atcamp 1
}
/if (${SpawnCount[npc invading radius 100]}>0 && ${NearestSpawn[npc invading].Distance}<80) {
/varset atcamp 0
/if (${Target.Type.NotEqual[NPC]}) /squelch /target clear
/if (${SpawnCount[npc enchanter radius 80]}>0) /target npc enchanter
/if (!${Target.ID} && ${SpawnCount[npc cleric radius 80]}>0) /target npc cleric
/if (!${Target.ID}) /target ID ${NearestSpawn[npc invading].ID}
/attack on
/varset targetid ${Target.ID}
/goto :naggycombatloop
}
/if (${missiondone}) /goto :endcombat
/goto :naggymainloop
:naggycombatloop
/doevents
/if (${Target.Distance}>80) {
/attack off
/squelch /target clear
}
/if (!${Target.ID} || ${Target.ID}!=${targetid} || ${Target.Type.NotEqual[NPC]}) /goto :naggymainloop
/squelch /face fast
/if (${Me.AltAbilityReady[Dragon Roar]} && ${SpawnCount[npc invading radius 80]}>2) {
/alt act 4062
/delay 5
/delay 1s !${Me.Casting.ID}
}
/if (${Me.AltAbilityReady[Lava Breath]} && ${SpawnCount[npc invading radius 80]}>2) {
/alt act 4061
/delay 5
/delay 1s !${Me.Casting.ID}
}
/if (${Me.AbilityReady[Kick]}) /doability "kick"
/goto :naggycombatloop
:endcombat
/return
Sub Priest1
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Zone.ID}==32) {
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[4]}-1439]} ${Math.Calc[${Math.Rand[12]}-756]}
/delay 5s !${Me.Moving}
/declare healat int local 65
/declare healtarget int local
/declare healloop int local
/varset missiondone 0
/declare atcamp int local 0
/declare healtimeout timer local
}
:combatcheck
/doevents
/if (${Zone.ID}==27) {
/goto :endcombat
}
/if (${Me.AltAbilityReady[Smoke Bomb]} && ${SpawnCount[npc invading radius 100]}>2 && ${Me.PctHPs}<80) {
/target NPC
/alt act 1052
/delay 5
/delay 1s !${Me.Casting.ID}
/squelch /target clear
}
/if (!${SpawnCount[npc invading]} && !${atcamp} && ${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[4]}-1439]} ${Math.Calc[${Math.Rand[12]}-756]}
/delay 5s !${Me.Moving}
/face heading -23
/varset atcamp 1
}
/if (${missiondone}) /goto :endcombat
/if (${SpawnCount[pc cleric]}>1 && ${NearestSpawn[1,pc cleric].ID}>${NearestSpawn[2,pc cleric].ID}) {
/varset healat 75
} else {
/varset healat 65
}
/call CheckHeal ${healat}
/if (${Macro.Return}) /goto :heal
/if (${missiondone}) /goto :endcombat
/assist ${Spawn[pc race Dragon]}
/if (${Target.ID} && ${Target.Race.Name.NotEqual[Chest]} && ${Target.Type.Equal[npc]}) {
/varset targetid ${Target.ID}
/varset atcamp 0
/attack on
/squelch /stick 12
/goto :combatloop
}
/if (${Target.Race.Name.Equal[Chest]}) /squelch /target clear
/if (${Me.PctMana}<50 && ${SpawnCount[npc invading]}==0 && ${Me.Standing}) {
/for loopcount 0 to ${Group.Members}
/tar ${Group.Member[${loopcount}]}
/if (${Target.PctHPs}<94) /goto :skipmed
/next loopcount
:medloop
/if (!${Me.Sitting}) /sit
/if (${SpawnCount[npc invading]}==0) /goto :medloop
:skipmed
}
| /if (!${SpawnCount[npc invading radius 200]} && ${Me.Standing} && ${Me.PctMana}>50 && !${Me.Casting.ID}) {
| /sit
| }
/goto :combatcheck
:combatloop
/doevents
/if (${SpawnCount[pc cleric]}>1 && ${NearestSpawn[1,pc cleric].ID}>${NearestSpawn[2,pc cleric].ID}) {
/varset healat 75
} else {
/varset healat 65
}
/call CheckHeal ${healat}
/if (${Macro.Return}) /goto :heal
/if (${Me.AltAbilityReady[Smoke Bomb]} && ${SpawnCount[npc invading radius 100]}>2 && ${Me.PctHPs}<80) {
/target NPC
/alt act 1052
/delay 5
/delay 1s !${Me.Casting.ID}
/squelch /target clear
}
/if (${Me.Y}>-1360 && ${Zone.ID}==32) {
/attack off
/if (${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1446]} ${Math.Calc[${Math.Rand[12]}-756]}
}
/delay 5s !${Me.Moving}
/squelch /target clear
}
/if (!${Target.ID} || ${Target.ID}!=${targetid} || ${Target.Type.NotEqual[NPC]}) /goto :combatcheck
/goto :combatloop
:heal
/varset healtarget 0
/for healloop 0 to ${Group.Members}
/if (${Group.Member[${healloop}].PctHPs} < ${Group.Member[${healtarget}].PctHPs}) /varset healtarget ${healloop}
/next healloop
/attack off
/squelch /stick off
/squelch /target clear
/target ID ${Group.Member[${healtarget}].ID}
/delay 1s ${Target.ID}==${Group.Member[${healtarget}].ID}
/squelch /face fast
/if (${Target.Distance}>135) {
/squelch /stick 10
/delay 3s !${Me.Moving}
/squelch /stick off
}
/if (${Target.PctHPs}<94) {
/alt act 4145
/delay 1s
/varset healtimeout 20s
:waitforheal
/if (${Target.PctHPs}>96) {
/keypress duck
/delay 5
/keypress duck
}
/if (!${healtimeout}) /goto :abort
/if (${Me.Casting.ID}) /goto :waitforheal
:abort
/delay 5
/if (${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[4]}-1439]} ${Math.Calc[${Math.Rand[12]}-756]}
}
/delay 3s
}
/goto :combatcheck
:endcombat
/squelch /target clear
/return
Sub CheckHeal(int healat)
/declare healtarget int local 0
/declare healloop int local 0
/for healloop 1 to ${Group.Members}
/if (${Group.Member[${healloop}].PctHPs} < ${Group.Member[${healtarget}].PctHPs}) /varset healtarget ${healloop}
/next healloop
/if (${SpawnCount[npc invading]}==0) /varset healat 94
/if (${Group.Member[${healtarget}].PctHPs} < ${healat}) /return 1
/return 0
Sub Priest2
/if (${Zone.ID}==32) {
/squelch /moveto loc -1356 -834
/delay 5s !${Me.Moving}
}
/if (${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1456]} ${Math.Calc[${Math.Rand[10]}-746]}
/delay 5s !${Me.Moving}
}
/declare healat int local 65
/declare healtarget int local
/declare healloop int local
/varset missiondone 0
/declare atcamp int local 0
/return
|--
|##GM Sub for checking
|---------------------
Sub GM
/if (${Spawn[gm].ID}) {
/gsay Time to go, cya later
/camp
/endmac
}
/return
|-
|# Chest popping
|----------------
Sub Event_Lastwave
/squelch /stick off
/squelch /moveto off
/echo Task Completed, Getting In Line To Loot Shard!
/if (${Me.Race.Name.Equal[Dragon]} && ${Me.Class.Name.Equal[Warrior]}) {
/delay 1m
}
:again
/if (${Zone.ID}==32) {
/delay ${Math.Rand[5]}s
/if (${Zone.ID}==32) {
/squelch /moveto loc -1331 -828
}
/delay 20s !${Me.Moving}
/delay ${Math.Rand[5]}s
/if (${SpawnCount[npc object race chest]}) {
/target ornate
/squelch /stick 2
/delay 2s ${Target.Distance}<5
/open
/delay 4s !${Target.ID}
}
/target ornate
/delay 12s ${Target.ID}
/loot
/delay 2s
/if (${Window[LootWnd].Open}) {
/if (${Corpse.Items}==1) {
/itemnotify loot1 rightmouseup
/itemnotify loot1 rightmouseup
/delay 2s
} else {
/itemnotify loot2 rightmouseup
/itemnotify loot2 rightmouseup
/delay 2s
}
/if (${Window[ConfirmationDialogBox].Open}) /nomodkey /notify ConfirmationDialogBox Yes_Button leftmouseup
/delay 2s
/notify LootWnd DoneButton Leftmouseup
/delay 3s (!${Window[LootWnd].Open})
/notify LootWnd DoneButton Leftmouseup
}
/if (!${FindItem[Shard of Wisdom].InvSlot.ID}) {
/goto :again
}
/popup Shard Looted, Task Completed!
/echo Task Completed! Good Job!
/varset missiondone 1
/varcalc success ${success}+1
/echo Successful Missions: ${success}
/echo Failed Missions: ${fail}
/if (${Me.Race.Name.Equal[Dragon]} && ${Zone.ID}==32) {
/squelch /moveto loc -1379 -857
}
/if (${Me.Race.Name.Equal[Giant]} && ${Zone.ID}==32) {
/squelch /moveto loc ${Math.Calc[${Math.Rand[10]}-1399]} ${Math.Calc[${Math.Rand[10]}-792]}
}
}
/return
|--
|##Chat Events
|-------------
Sub Event_Chat(string ChatType,string ChatSender,string ChatText)
/If (${ChatType.Equal[TELL]} && ${ChatText.Equal[${Password}]}) {
/invite ${ChatSender}
/taskaddplayer ${ChatSender}
/return
}
/If (${ChatText.Equal[make me leader]}) {
/makeleader ${ChatSender}
/return
}
/return
|--
|##Holds macro when you die
|--------------------------
Sub Event_Slain
:wait1
/delay 1s
/target myself
/if (${Me.PctHPs}<5) /goto :wait1
/if (!${Target.ID}) /goto :wait1
/delay 3s
/if (${Me.Race.Name.Equal[Dragon]} && ${Me.Class.Name.Equal[Warrior]}) {
/fade
}
/if (${SpawnCount[pc race Dragon]}==0 && ${SpawnCount[pc]}<=2) {
/fade
}
/return
|--
|##End Macro if you camp on your own
|-----------------------------------
Sub Event_Camping
/echo Camping - Ending macro!
/endmacro
|--
|## Task Quitter
|-----------------
Sub Event_None
/if (${Ini[naggychars.ini,NaggyChars,Lord Nagafen,NULL].Equal[${Me.Name}]}) {
/declare tempvar int local
/for tempvar 1 to ${Group.Members}
/taskremove ${Group.Member[${tempvar}]}
/next tempvar
/taskquit
}
/return
|--
|## Task Quit If Timer
|-----------------
Sub Event_Finished(Line,int TaskTime)
/varcalc TaskTime ${TaskTime}-1
/if (!${Ini[naggychars.ini,NaggyChars,Lord Nagafen,NULL].Equal[${Me.Name}]}) {
/return
}
/if (${TaskTime}<1) {
/echo Your Task Has Ended, Quitting Task
/declare tempvar int local
/for tempvar 1 to ${Group.Members}
/taskremove ${Group.Member[${tempvar}]}
/next tempvar
/taskquit
/return
}
/echo Waiting ${TaskTime} Minutes For Task Timer To Expire So We Can Start A New Mission.
/delay ${TaskTime}m
/if (${Ini[naggychars.ini,NaggyChars,Lord Nagafen,NULL].Equal[${Me.Name}]}) {
/declare tempvar int local
/for tempvar 1 to ${Group.Members}
/taskremove ${Group.Member[${tempvar}]}
/next tempvar
/taskquit
}
/return
|--
|## Still Have Mission Timer
|-----------------
Sub Wait
:waitmore1
/echo Mission Timer Still Active Waiting 2 Minutes And Trying Again
/delay 2m
/if (!${Window[TaskTemplateSelectWnd].Open}) /say Fierce Battles
/delay 3s
/if (!${Window[TaskTemplateSelectWnd].Open}) /goto :waitmore1
/return
|---
| Incoming
|----------
sub Event_Incoming
/varcalc WaveNumber ${WaveNumber}+1
/echo Here Comes Wave ${WaveNumber}!
/if (${Me.Sitting}) {
/stand
}
/return
|---
| Buy AA's
|----------
sub BuyAAs
/keypress i
/notify InventoryWindow IW_AltAdvBtn leftmouseup
/delay 1s
/notify AAWindow AAW_LoadButton leftmouseup
/delay 1s
/doevents
/return
sub Event_NoAAs
/beep
/beep
/echo Buy all the AA's on the general tab. After you have finished please click save.
/return
sub Event_SomeTell
/echo Tell received.
/beep
/delay 10
/beep
/delay 10
/beep
/return
sub Event_NoMonster
/echo Monster Select Failed, Retrying
/call TemplateSelect
/call EnterMission
/return
sub TemplateSelect
/declare tempvar int local
/declare tempvar1 int local
/if (${Template.Equal[Lord Nagafen]}) {
/echo Selecting Lord Nagafen
/notify TaskTemplateSelectWnd TaskTemplateSelectListRequired listselect ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListRequired].List[Lord Nagafen]}
/delay 10
/notify TaskTemplateSelectWnd TaskTemplateSelectListRequired leftmouse ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListRequired].List[Lord Nagafen]}
/delay 10
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/return
} else {
/if (${Template.Equal[Priest Of Nagafen2]}) {
/varset tempvar 1
/varset Template Priest of Nagafen
}
/if (${Template.Equal[Priest Of Nagafen3]}) {
/varset tempvar1 1
/varset Template Priest of Nagafen
}
/echo Selecting ${Template}
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListOptional].List[${Template}]}
/delay 10
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional leftmouse ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListOptional].List[${Template}]}
/delay 10
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/if (${tempvar}) /varset Template Priest of Nagafen2
/return
/if (${tempvar1}) /varset Template Priest of Nagafen3
}
/echo Failed to locate correct character name in ${inichars}. Please update ${inichars} and add your character to a template.
/end