--- THANKS TO CURIOUS FOR THE SCRIPT
Code: Select all
| StaticMobWacker.mac
#define MobToWack v1
#define SpellToCast v2
#define HealSpell v3
#define SafeX v4
#define SafeY v5
#define SafeH v6
#define KillCount v7
#define LootCount v8
#define MobID v9
Sub Main
| Edit these variables to match your situation:
/varset MobToWack "Thomas"
/varset SpellToCast "Sha's Lethargy"
/varset HealSpell "Healing"
| End Edit
/varset SafeX $char(100)
/varset SafeY $char(100)
/varset SafeH $char(south)
/varset KillCount 0
/varset LootCount 0
:CampLoop
/if $char(state)=="stand" /sit
/doevents
/target $MobToWack
/if $target(name,clean)==$MobToWack /call KillIt
/if n $char(hp,pct)<90 /call HealUp
/goto :CampLoop
/Sub KillIt
/varset MobID $target(id)
/pet attack
/if n $char(mana,cur)>$spell("$SpellToCast",mana) {
/if $char(state)=="sit" /stand
/cast "$SpellToCast"
}
/if $char(state)=="stand" /sit
:WaitTill30
/doevents
/if n $target(hp,pct)>30 /goto :WaitTill30
/if $char(state)=="sit" /stand
/attack
:MeleeLoop
/if n $abs($char(heading)-$heading($target(y),$target(x)))>30 {
/sendkey up up
/face nopredict
/sendkey down up
} else {
/face nopredict
}
/if n $target(distance)<5 /press down
/if n $target(distance)>5 /press up
/if n $target(distance)>12 /sendkey down up
/if n $char(ability,"kick")>0 /doability "kick"
/doevents
/if n $target(id)!=0 /goto :MeleeLoop
/varadd KillCount 1
/echo $MobToWack has been wacked $KillCount times so far!
/sendkey up up
/delay 1
/target id $MobID
/call LootUp
/face heading $heading($SafeY,$SafeX)
/delay 1s
:GoHomeLoop
/face heading $heading($SafeY,$SafeX)
/if n $distance($SafeY,$SafeX)>5 /press up
/if n $distance($SafeY,$SafeX)>12 /sendkey down up
/if n $distance($SafeY,$SafeX)>5 /goto :GoHomeLoop
/face heading $SafeH
/return
/Sub LootUp
/loot
:WaitLoot
/doevents
/if $invpanel=="false" /goto :WaitLoot
/delay 1
/varset l1 0
:LootLoop
/if n $l1==9 /goto :Looted
/varset t1 10
/click left corpse $l1
:WaitLootClick
/doevents
/if $cursor()=="true" /goto :SnagLoot
/if n $t1>0 /goto :WaitLootClick
/delay 1
/if $cursor()!="true" /goto :Looted
:SnagLoot
/click left auto
/varadd LootCount 1
/varadd l1 1
/goto :LootLoop
:Looted
/click left corpse done
/echo $LootCount items snagged so far!
/return
Sub HealUp
:HealLoop
/if n $char(hp,pct)>90 /return
/if n $char(mana,cur)<$spell("$HealSpell",mana) /return
/if $char(state)=="sit" /stand
/cast "$HealSpell"
/goto :HealLoop
/return
when i change this;
Code: Select all
/if $target(name,clean)==$MobToWack /call KillIt
Code: Select all
/if $target(name)==$MobToWack /call KillIt
Im pretty confused.
ALSO! Can anyone please help me insert a way to checked pets health, and if below 40% heal it. And for the macro to also check the 2 buffs that I use for my pet and cast them when needed? I think this could be way worth wild to all those pet classes out there. Would love to see if anyone can work this out.
Thanks and sorry my english sucks



