|-------------------
#Event Snareage "#*#face twists in anger."
#Event Snareage2 "Your Call of Challenge has worn off of#1#"
#include Exp_Tracking.inc
#include spell_routines.inc
#turbo 10
Sub Main
/declare HealerName string outer CLERICNAME
/declare ShamanName string outer SHAMANNAME
/declare myzone int outer ${Zone.ID}
|------------------------------------------------------------
|Declare Safe Players.
|------------------------------------------------------------
/alert add 2 pc ${HealerName}
/alert add 2 pc ${ShamanName}
/alert add 2 pc ${Me}
|------------------------------------------------------------
|Loot Array Information.
|------------------------------------------------------------
/declare RV_LootArray[4] string outer
/varset RV_LootArray[1] "Rocks"
/varset RV_LootArray[2] "Formation"
/varset RV_LootArray[3] "Brick"
| /varset RV_LootArray[5] "Strand"
/varset RV_LootArray[4] "Stone"
| /varset RV_LootArray[6] "Ethereal"
/declare RV_MyTargetID int outer 0
/declare RV_MyTargetName string outer
/declare RV_MyTargetDead int outer 0
/declare RV_InvalidTargetID int outer 0
/declare RV_HasTarget int outer 0
/declare RV_LootSlot int outer 0
/declare RV_CheckLook int outer 0
/declare RV_Fighting int outer 0
/declare RV_TargetDead int outer 0
/declare wpsave int outer 0
/declare slowonce bool outer TRUE
/declare dotonce bool outer TRUE
/declare snareonce bool outer TRUE
/declare dsonce bool outer TRUE
/declare rootonce bool outer TRUE
/declare playernearby bool outer FALSE
/declare Spawnloc[11] string outer
/varset Spawnloc[1] "wp1"
/varset Spawnloc[2] "wp2"
/varset Spawnloc[3] "wp3"
/varset Spawnloc[4] "wp4"
/varset Spawnloc[5] "wp5"
/varset Spawnloc[6] "wp6"
/varset Spawnloc[7] "wp7"
/varset Spawnloc[8] "wp8"
/varset Spawnloc[9] "wp9"
/varset Spawnloc[10] "wp10"
/varset Spawnloc[10] "wp11"
/call ExpPrep
:Start
/doevents
/call GMCheck
/if (!${Spawn[${HealerName}].ID}) {
/warp succor
/quit
/endmacro
}
/call GetTarget
:KillAdds
/if (${RV_HasTarget}) /call MoveToMob
/if (${RV_HasTarget}) /call CombatSub
/if (${RV_HasTarget}) /call MoveToMob
/if (${RV_HasTarget}) /call LootMob
/if (${Target.ID}) {
/echo Looks like something is attacking us, killing it...
/delay 1s
/varset RV_HasTarget 1
/varset RV_Fighting 1
/goto :KillAdds
}
/goto :Start
/return
|--------------------------------------------------------------------------------
|SUB: Aquire Target
|--------------------------------------------------------------------------------
Sub GetTarget
/keypress esc
/if (${Spawn[${HealerName}].ID} && (${wpsave}>10)) /varset wpsave 0
/varset wpsave ${Math.Calc[${wpsave}+1]}
/if (${Target.Type.NotEqual[NPC]} || !${Target.ID}) /warp wp ${Spawnloc[${wpsave}]}
/delay 30
/if (${NearestSpawn[NPC].Distance}>40) {
/return
} else {
/target ${NearestSpawn[NPC]}
/varset RV_HasTarget 1
/return
}
/return
|--------------------------------------------------------------------------------
|SUB: Moving
|--------------------------------------------------------------------------------
Sub MoveToMob
/if (${Int[${Target.Distance}]}>25) {
/delay 30
/warp target
}
/return
|--------------------------------------------------------------------------------
|SUB: Combat
|--------------------------------------------------------------------------------
Sub CombatSub
/varset RV_Fighting 1
/varset RV_TargetDead 0
/stick 13 moveback
:CombatLoop
/doevents
/delay 15
/attack on
/if (${Target.Distance}>16) /stick 13 moveback
/if (!${Target.Type.Equal["NPC"]}) /keypress esc
/if (${Target.ID}) /face fast
/if (${Target.ID}) /call SpecialIT
/if (!${Target.ID}) {
/call GMCheck
/attack off
/keypress forward
/keypress back
/varset RV_TargetDead 1
/varset RV_Fighting 0
/delay 40s
/target radius 30 corpse
/varset snareonce TRUE
/varset slowonce TRUE
/varset dotonce TRUE
/varset dsonce TRUE
/varset rootonce TRUE
/if (!${Spawn[${HealerName}].ID}) {
/gate
/quit
/endmacro
}
/if ((${Me.PctHPs}>60)&&(${Me.Buff["Conviction"].Duration}<=30)) {
/tell ${HealerName} V
/delay 16s
:wait4conviction
/if (${Me.Buff["Conviction"].Duration}>30) /return
/tell ${HealerName} V
/delay 16s
/goto :wait4conviction
}
| :nextbuff1
/if (${Me.Buff["Harnessing of Spirit"].Duration}<=10) {
/tell ${ShamanName} focus
:wait4focus
/if (${Me.Buff["Harnessing of Spirit"].Duration}>11) /return
/goto :wait4focus
}
| :nextdotheal
/if (${Me.PctHPs}<99) {
/tell ${HealerName} dot heal
/delay 6s
:wait4dotheal
/if (${Me.Buff["Pious Elixir"].Duration}<20) /return
/tell ${HealerName} dot heal
/delay 7s
/goto :wait4dotheal
}
/return
}
}
/goto :CombatLoop
/return
|--------------------------------------------------------------------------------
|SUB: Special Combat
|--------------------------------------------------------------------------------
Sub SpecialIt
|----------Melee Ability---Kick---Bash---------Input what you use----------------
/if ((${Target.Distance}<17)&&(${Me.AbilityReady["Kick"]})) /doability "Kick"
/if (${Target.Distance}<=17 && ${Me.AbilityReady[Disarm]}) /doability "Disarm"
/if (${Target.Distance}<=17 && ${Me.AbilityReady[Taunt]}) /doability "Taunt"
|------Bazu Bellow mob--To gain more agro!
/if ((${Target.PctHPs}>96)&&(${Target.PctHPs}<100)) {
/if (${Me.CombatAbilityReady["Bazu Bellow"]}) /disc Bazu Bellow
}
/if (${Me.PctHPs}<10) {
/disc Fortitude
/tell ${ShamanName} Gate
/delay 2s
/tell ${HealerName} Gate
/delay 8s
/warp wp safe
/fade
/mqlog LOW HP Succored
/disc Healing Will Discipline
/quit
/endmacro
}
|------Slows and DoTs to decrease mobs DPS
/if ((${Me.PctHPs}>20)&&(${Target.PctHPs}<95)&&(${dotonce})) {
/tell ${ShamanName} dot1
/delay 2s
/tell ${ShamanName} dot
/varset dotonce FALSE
/delay 2s
}
/if ((${Me.PctHPs}>20)&&(${Target.PctHPs}<95)&&(${slowonce})) {
/tell ${ShamanName} slow
/varset slowonce FALSE
/delay 2s
}
/if ((${Me.PctHPs}>70)&&(${Target.PctHPs}<95)&&(${dsonce})) {
/tell ${HealerName} damage shield
/varset dsonce FALSE
/delay 2s
}
/if ((${Target.PctHPs}<30)&&(${rootonce})) {
/tell ${HealerName} root
/varset rootonce FALSE
/delay 2s
}
|------Disciplines to increase DPS---------
|------Snaremob
/if ((${Target.PctHPs}>1)&&(${Target.PctHPs}<26)&&(${snareonce})) /call snaremob
/return
|--------------------------------------------------------------------------------
|SUB: Reset
|--------------------------------------------------------------------------------
Sub ResetSub
/call ExpTrack
|---------Casts Haste after fight is finished-------------------
/call cast "Kizrak's Gauntlets of Battle" item
/delay 30
/keypress esc
/keypress esc
/keypress esc
/keypress esc
/varset RV_HasTarget 0
/varset RV_TargetDead 0
/varset RV_Fighting 0
/return
|--------------------------------------------------------------------------------
|SUB: GM Check ----Player Checks
|--------------------------------------------------------------------------------
Sub GMCheck
/if (${Zone.ID}!=${myzone}) {
/quit
/endmacro
}
/if (${Spawn[gm].ID}) {
/mqlog GM ENTERED ZONE!!!
/keypress forward
/keypress back
/quit
/endmacro
/unload
}
/return
|--------------------------------------------------------------------------------
|SUB: Looting
|--------------------------------------------------------------------------------
Sub LootMob
/declare LootSlot int inner 0
/declare LootCheck int inner 0
/declare LootTotal int inner 0
/face fast
/keypress forward
/keypress back
/fastdrop on
/lootn never
/delay 1s
/loot
/delay 1s
/if (!${Corpse.Items}) {
/echo NO LOOT! Cheap Bastard!
/call ResetSub
/return
}
/varset LootTotal ${Corpse.Items}
/for LootSlot 1 to ${LootTotal}
/itemnotify loot${LootSlot} leftmouseup
/delay 1s
|---------Keep Good Stuff---------------------
/for LootCheck 1 to ${RV_LootArray.Size}
/if (${Cursor.Name.Find[${RV_LootArray[${LootCheck}]}]}) {
/echo Keeping a ${Cursor.Name}... WOOT!
/autoinventory
/delay 1s
}
/next LootCheck
|---------Destroy Bad Stuff-------------------
/if (${Cursor.ID}) {
/echo Destroying a ${Cursor.Name}...
/destroy
/delay 1s
}
/next LootSlot
/notify LootWnd DoneButton leftmouseup
/delay 1s
/call ResetSub
/return
|--------------------------------------------------------------------------------
|SUB: Playercheck
|--------------------------------------------------------------------------------
Sub playercheck
|-----------Player Check-------Anyone comes near you jet!
/if (${Spawn[pc noalert 2 radius 500].ID}) {
/warp succor
/mqlog Player near
/quit
/endmacro
/return
|--------------------------------------------------------------------------------
|SUB: Snaremob - Uses Call of Challenge AA in the Dark Hollow |Tab.
|--------------------------------------------------------------------------------
Sub snaremob
:Snare_Loop
/delay 1s
/if (${Me.AltAbilityReady["Call of Challenge"]}) /aa act Call of Challenge
/doevents
/if ((!${snareonce})&&(${Zone.ID})) /return
/goto :Snare_Loop
/return
Sub Event_Snareage
/varset snareonce FALSE
/return
Sub Event_Snareage2
/varset snareonce TRUE
/return