Maskoi
old and salty
- Joined
- Sep 28, 2005
- RedCents
- 82,796¢
Courtesy of ctaylor22
Here is what I did to fix it.
The lines in Red are your code, the blue what I changed.
This is in the Sub FindMob line 3099 ish
MASKOI: DELETE THE RED LINE ADD THE BLUE ONE
The logic is still the same just moved things a bit.
Here is what I did to fix it.
The lines in Red are your code, the blue what I changed.
This is in the Sub FindMob line 3099 ish
MASKOI: DELETE THE RED LINE ADD THE BLUE ONE
Rich (BB code):
/for i 1 to ${PullCount}
/doevents
/if (${Navigation.MeshLoaded}) {
/varset PullMob ${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull PullMob: Nav-${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable].CleanName} ID: ${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
} else /if (${Select[${Role},hunter]}) {
/varset PullMob ${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull PullMob: Hunter-${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable].CleanName} ID: ${NearestSpawn[${i}, npc radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
} else {
/varset PullMob ${NearestSpawn[${i}, npc los radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull PullMob: Normal-${NearestSpawn[${i}, npc los radius ${MaxRadius} zradius ${MaxZRange} targetable].CleanName} ID: ${NearestSpawn[${i}, npc los radius ${MaxRadius} zradius ${MaxZRange} targetable noalert 1].ID}
}
/varset PullMobValid 0
/if (${PullMob}) {
|/varset PullMobValid 0
| Check Kissassist_info.ini file for pull list
/if (!${MobsToPull.Find[All]}) {
/for j 1 to 25
/if (${DebugPull} && ${MobsToPull.Arg[${j},,].Length}) /echo DEBUGPULL FindMobToPull ${i}.${j} PullList ${Spawn[${PullMob}].CleanName}/${MobsToPull.Arg[${j},,]} ${Spawn[${PullMob}].CleanName.Find[${MobsToPull.Arg[${j},,]}]}
/if (${Spawn[${PullMob}].CleanName.Find[${MobsToPull.Arg[${j},,]}]}) /goto :MobOnList
/next j
/goto :CheckNextMob
:MobOnList
}
| Check if spawn is on ini file ignore list
/if (${MobsToIgnore.Find[${Spawn[${PullMob}].CleanName}]}) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: Mob on ini ignore list
/goto :CheckNextMob
}
| Check if spawn is on temp ignore list
/if (${PullTempIgnoreList.Find[${PullMob}]}) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: Mob on temp ignore list
/goto :CheckNextMob
}
| Check spawn for out of range - macro start point as epicenter
/if (${Math.Distance[${Spawn[${PullMob}].Y},${Spawn[${PullMob}].X}:${CampYLoc},${CampXLoc}]}>${MaxRadius}) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: Out of Range
/goto :CheckNextMob
}
| Check spawn for line of sight - no mq2nav
/if (${Select[${Role},puller,pullertank]} && !${Spawn[${PullMob}].LineOfSight} && !${Navigation.MeshLoaded}) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: No line of sight
/goto :CheckNextMob
}
| Check if any PC/toon is near the mob
/if (${SpawnCount[loc ${Spawn[${PullMob}].Y} ${Spawn[${PullMob}].X} radius 15 pc]}>=1 && ${Pulling} && ${Math.Distance[${Spawn[${PullMob}].Y},${Spawn[${PullMob}].X}:${Me.Y},${Me.X}]}>=16) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: PCs near mob
/goto :CheckNextMob
}
| Check spawn for 100% health
/if (${Spawn[${PullMob}].PctHPs}<=99) {
/if (${DebugPull}) /echo DEBUGPULL FindMobToPull ${Spawn[${PullMob}].CleanName} invalid target Reason: Mob not 100% health
/goto :CheckNextMob
}
|/if (${i}<${PullCount}) /varset PullMobValid 1
/varset PullMobValid 1
}
/if (${PullMobValid}) /goto :FoundMob
:CheckNextMob
/next i
The logic is still the same just moved things a bit.

