Useage = /hitallmobs
Requires spell_routines.inc
Basically, it will target the closest NPC, make sure you ability is ready, and make sure you can see the mob, then it will /face you target, throw stone, then move to the next mob, if your target is not in LoS, it will skip it, it wil also loop and wait for your ability to be ready. When finished, it will tell you how many mobs were hit.
If you have any problems, or suggestions, post or PM me.
hitallmobs.mac
Code: Select all
|hitallmobs.mac By: Harden 07/08/06
|-------------------------------------------------------------------
|Description: Hit's all mobs within 50 range of you with a specified
|ability. Keep's count of how many mobs were hit, and reports when
|done. (Requires spell_routines.inc)
--------------------------------------------------------------------
|-Useage: /hitallmobs
|===================================================================
#include spell_routines.inc
Sub Main
/squelch /alias /hitallmobs /echo hitallmobs
:loop
/doevents
/goto :loop
/return
#Event HitAllMobs "[MQ2] HitAllMobs"
Sub Event_HitAllMobs
|=========================================|
|==Edit Throw Stone, for your AA ability==|
|=========================================|
/declare ABILITY_NAME string local Throw Stone
/echo *Attempting to hit all mobs in Range with ${ABILITY_NAME}.
/if (!${SpawnCount[npc radius 50]}) {
/echo No Mobs in Range, Aborting...
/return
}
/target npc
/declare i int local 0
/declare cnt int local 0
/for i 1 to ${SpawnCount[npc radius 50]} {
:loop
/if (${Me.AltAbilityReady[${ABILITY_NAME}]} && ${Target.LineOfSight}) {
/face
/delay 1s
/aa act ${ABILITY_NAME}
/delay 3s
} else {
/if (!${Me.AltAbilityReady[${ABILITY_NAME}]}) }{
/goto :loop
} else {
/if (!${Target.LineOfSight}) }{
/echo ${Target.CleanName} Not in Line of sight, Skipping...
/next i
}
}
}
/varcalc cnt ${cnt}+1
/target npc next radius 50
/next i
/echo *Done Hitting mobs all mobs in range.
/echo *Total of ${cnt} Mob(s) hit.
/return



