Code: Select all
|---------------------------------|
| Generic Pull Bot
| V0.2a
| Tuesday, Mar 15
| By Blazza
| This is JUST a shell for your
| OWN pulling macro's. It doesnt
| do anything without YOUR
| Pathfiles. Mob LOCATIONS.. Or
| Anything else for that matter.|
|---------------------------------|
#include Advpath.inc
#include spell_routines.inc
Sub Main
/call InitVars
:MainLoop
/call GrabTarget
/call PullTarget
|--------------------- Add your main loop here. (EG, Killing Sub's, Looting Subs)
/goto :MainLoop
|---------------------------------|
| Sub InitVars
| Declare all variables and arrays
| Called From Main
|---------------------------------|
Sub InitVars
/call InitAPFVars 1 15 20
/declare MobXArray[5] int outer
/declare MobYArray[5] int outer
/declare MobPathToArray[5] string outer
/declare MobPathFromArray[5] string outer
/declare ArraySize int outer 5 |### Your Array Size!!!
|===================================== Define Spawns Here!!!!
/varset MobXArray[1] #### ADD YOUR MOB'S INFO! #####
/varset MobYArray[1] #### ADD YOUR MOB'S INFO! #####
/varset MobPathToArray[1] ### ADD YOUR PATH FILE! #####
/varset MobPathFromArray[1] ### ADD YOUR PATH FILE! #####
/varset MobXArray[2] #### ADD YOUR MOB'S INFO! #####
/varset MobYArray[2] #### ADD YOUR MOB'S INFO! #####
/varset MobPathToArray[2] ### ADD YOUR PATH FILE! #####
/varset MobPathFromArray[2] ### ADD YOUR PATH FILE! #####
/varset MobXArray[3] #### ADD YOUR MOB'S INFO! #####
/varset MobYArray[3] #### ADD YOUR MOB'S INFO! #####
/varset MobPathToArray[3] ### ADD YOUR PATH FILE! #####
/varset MobPathFromArray[3] ### ADD YOUR PATH FILE! #####
/varset MobXArray[4] #### ADD YOUR MOB'S INFO! #####
/varset MobYArray[4] #### ADD YOUR MOB'S INFO! #####
/varset MobPathToArray[4] ### ADD YOUR PATH FILE! #####
/varset MobPathFromArray[4] ### ADD YOUR PATH FILE! #####
/varset MobXArray[5] #### ADD YOUR MOB'S INFO! #####
/varset MobYArray[5] #### ADD YOUR MOB'S INFO! #####
/varset MobPathToArray[5] ### ADD YOUR PATH FILE! #####
/varset MobPathFromArray[5] ### ADD YOUR PATH FILE! #####
|===================================== Stop Define
/declare CurrentMobID int outer 0
/declare CurrentMobArrayElement int outer 0
/return
|------------------------------------|
| Sub GrabTarget
| Searches for targets in mob array
|------------------------------------|
Sub GrabTarget
/declare counter int local 1
/declare MobTemp int local 0
:Restart
/for counter 1 to ${ArraySize}
/doevents
/delay 1s
/echo Checking at ${MobXArray[${counter}]} ${MobYArray[${counter}]}
/varset MobTemp ${Spawn[loc ${MobXArray[${counter}]} ${MobYArray[${counter}]} npc radius 10].ID}
/if (${MobTemp}!=0) {
/varset CurrentMobID ${MobTemp}
/varset CurrentMobArrayElement ${counter}
/echo Found Spawn ID ${CurrentMobID} with the array element of ${CurrentMobArrayElement}
/return
}
/if (${counter}==${ArraySize}) /goto :Restart
/next counter
/return
|-------------------------------------|
| Sub PullTarget
| Pulls the target from Sub GrabTarget
|-------------------------------------|
Sub PullTarget
/call PlayFunction "${MobPathToArray[${CurrentMobArrayElement}]} 1 cf nopp noz"
/call WaitTilThere
/target ${Spawn[loc ${MobXArray[${CurrentMobArrayElement}]} ${MobYArray[${CurrentMobArrayElement}]} npc radius 20]}
/delay 1s
|####### ADD YOUR PULL SPELL / HOTKEY / WHATEVER HERE!!!!!!!
/delay 1s
/call PlayFunction "${MobPathFromArray[${CurrentMobArrayElement}]} 1 cf nopp noz"
/call WaitTilThere
/doevents
/return
/return
|--------------------------------------|
| Sub WaitTillThere
| Used for Advpath playback
|--------------------------------------|
Sub WaitTilThere
:LoopTilThere
/if (${PathingFlag}==1) {
/call AdvPathPoll
/delay 0
/doevents
/goto :LoopTilThere
}
/return

