I've seen a couple of these macros floating around, but none of them worked very well. I remember back in the day them being used quite a bit more, but after wiping a couple times in EoK and wasting time dragging my corpses I created a new one from scratch. No parameters, no setup, no ini or any of that crap.
This is simple... at launch time it drags every single PC corpse within 100 units (max drag distance). It will drag 20+ corpses if needed.
**Note: It reads all corpses AT LAUNCH (it will not pickup more along the way, although I can program that as well)
Instructions
Version 2 Released 12/16/2016 - Various bug fixes and no longer spam summons when corpose is less than 25 units away and ONLY targets pc corpses.
Here is source, and attached is macro
This is simple... at launch time it drags every single PC corpse within 100 units (max drag distance). It will drag 20+ corpses if needed.
**Note: It reads all corpses AT LAUNCH (it will not pickup more along the way, although I can program that as well)
Instructions
- Download drag.mac to /Release/Macros
- Kill your chars
- type "/mac drag" when you are within 100 units of corpses
- PROFIT!
Version 2 Released 12/16/2016 - Various bug fixes and no longer spam summons when corpose is less than 25 units away and ONLY targets pc corpses.
Donations PM for instructions on Krono Donations |
Rich (BB code):
|Drag.mac
|By Noobhaxor
|----------
|Drag every corpse within 100 unit radius
#Event Denied "#*#You do not have consent#*#"
Sub Main
/declare numcorpses int outer 0
/declare loopcorpse1 int outer 1
/declare loopcorpse2 int outer 1
/declare badcorpseid int outer 0
/call FindCorpses
:mainloop
/for loopcorpse2 1 to ${Corpse2Drag.Size}
/if (${Spawn[id ${Corpse2Drag[${loopcorpse2}]}].Distance}>25) {
/doevents flush
/tar id ${Corpse2Drag[${loopcorpse2}]}
/delay 5 ${Target.ID}==${Corpse2Drag[${loopcorpse2}]}
/cor
/doevents
}
/next loopcorpse2
/if (${SpawnCount[pccorpse radius 100]}==0) {
/echo No corpses found ending macro
/end
}
/goto :mainloop
/return
Sub FindCorpses
/varcalc numcorpses ${SpawnCount[pccorpse radius 100 notid ${badcorpseid}]}
/declare Corpse2Drag[${numcorpses}] int outer
/for loopcorpse1 1 to ${numcorpses}
/varset Corpse2Drag[${loopcorpse1}] ${NearestSpawn[${loopcorpse1}, pccorpse radius 100 notid ${badcorpseid}].ID}
/next loopcorpse1
/return
Sub Event_Denied
/varset badcorpseid ${Target.ID}
/call FindCorpses
/return