>>Navigator.iss method BestRezSpot() { variable int incaj variable int aggrorange variable int RezDistance = 0 variable int numpoints variable objectref closestMob variable int closestMobDistance variable point3f specialSpot variable index:lnavregionref SafePoints closestMob:Set[${Object[-nearest 1,-units,-range 0-50,-origin,${Me.Corpse.X},${Me.Corpse.Y},${Me.Corpse.Z}].GUID}] if ${Distance[${closestMob.Location},${Me.Corpse}]}>30 { This:Echo["Rezzing at corpse location"] This:MoveTo[${Me.Corpse.X},${Me.Corpse.Y},${Me.Corpse.Z}] return } Else { numpoints:Set[${LNavRegion[${This.Continent}].DescendantsWithin[SafePoints,39,${Me.Corpse.X},${Me.Corpse.Y},${Me.Corpse.Z}]}] if ${numpoints} { incaj:Set[1] do { closestMob:Set[${Object[-nearest 1,-units,-range 0-100,-origin,${SafePoints.Get[${incaj}].CenterPoint.X},${SafePoints.Get[${incaj}].CenterPoint.Y},${SafePoints.Get[${incaj}].CenterPoint.Z}].GUID}] aggrorange:Set[20+${closestMob.Level}-${Me.Level}] if ${aggrorange}>45 aggrorange:Set[45] elseif ${aggrorange}<5 aggrorange:Set[5] closestMobDistance:Set[${Math.Distance[${closestMob.Location},${SafePoints.Get[${incaj}].CenterPoint}]}-${aggrorange}] if ${closestMobDistance} > ${RezDistance} { RezDistance:Set[${closestMobDistance}] specialSpot:Set[${SafePoints.Get[${incaj}].CenterPoint}] } } while ${incaj:Inc} <= ${numpoints} This:Echo["Safe spot found at ${specialSpot}; ${RezDistance} yards out of aggro range"] This:MoveTo[${specialSpot.X},${specialSpot.Y},${specialSpot.Z}] return if !${RezDistance} { This:Echo["No safe spot to rezz!"] return } } Else { This:Echo["WTF? How'd I die here??"] return } } } ______________________________________________________________ >>Grind.iss #define GRIND_CORPSEREZ 35 >>>method Arrived case GRIND_CORPSEREZ Navigator:ResetDestination This.LastCorpseRetrieve:Set[${LavishScript.RunningTime}] WoWScript RetrieveCorpse() case GRIND_CORPSERUN Navigator:ResetDestination break >>>member State if ${Me.Ghost} && (${Math.Distance[${Me.Location},${Me.Corpse}} < 45) { This.Status:Set["Corpse rez"] return GRIND_CORPSEREZ } >>>method Pulse case GRIND_CORPSEREZ if !{Navigator.HaveDestination} { Navigator:BestRezSpot } break