You will need the SuperMacro addon for this to work
Mouseover pet attack macro:
/run m="mouseover" if UnitExists(m) and UnitReaction(m,"player")<5 then TargetUnit(m)
PetAttack() TargetLastTarget() else PetAttack() end
Onebutton macro for pet attack on mouseover target, CoA, Corruption and wanding. In the SuperMacro frame, type this into the "Enter Macro Commands:"
/run DotItUp()
Copy & paste this into the right editbox (Extended LUA code)
function DotItUp()
m="mouseover"
t="target"
p="player"
if UnitExists(m) and UnitReaction(m,p) < 5 then
TargetUnit(m) PetAttack() else TargetNearestEnemy() PetAttack() end
if not buffed("Curse of Agony",t) then
CastSpellByName("Curse of Agony")
else if not buffed("Corruption",t) then
CastSpellByName("Corruption") else
CastSpellByName("Shoot")
end
end
end
It will target the mob you're hovering the cursor over, or if you just spam it mindlessly it will target the nearest attackable target (use with caution..)
If you use Drain Soul to finish off mobs (and get that Mana regen buff) you will sooner or later end up with Soul Shards just about everywhere - and if you don't have a Soul Pouch you can't easily fix this. But fear not! This macro/script will sort all your shards into the leftmost bag, it will also delete the shard in the last slot of the 4th bag so it will never overflow from that bag. But beware - it's quite stupid - don't keep any epics in bag #4, it will silently destroy them too.
Macro command:
/cast Drain Soul
/run SoulSorter()
/run PickupContainerItem(4,GetContainerNumSlots(4)) DeleteCursorItem()
LUA code
function SoulSorter()
for bag=0,4,1 do
for slot=1,GetContainerNumSlots(bag),1 do
local name=GetContainerItemLink(bag,slot)
if name and string.find(name,"Soul Shard") then
PickupContainerItem(bag,slot)
PutItemInBag(ContainerIDToInventoryID(4))
end
end
end
end