another good program is OGM Dex Controller, though I'm not sure how Claw Friendly it is.
To make any script "claw friendly" (and healer friendly as well) you can add a few things....
set !TM_HEAL #FALSE
set !TM_loot_in_progress #FALSE
That sets the globals that the healer and looter use to
#FALSE, just put that in the initial script setup.
TM:
repeat
gosub Check_Status
if #result = TRUE
goto TM
Thats the very first part of the main loop. It goes to the sub routine
Check_Status and gets the value of
!TM_HEAL and
!TM_loot_in_progress, if either one is TRUE then the script returns to the beginning via an ugly GOTO that was put in just to make TM smile.
Now the heart of the sub, the checks.
sub Check_Status
if #targCurs = 1 || #lLiftedKind = 1
return #TRUE
namespace copy TM_HEAL from global TM_HEAL
if !TM_HEAL = #TRUE
return #TRUE
wait 10
namespace copy TM_loot_in_progress from global TM_loot
if !TM_loot_in_progress = #TRUE
return #TRUE
return #FALSE
Notice I put in
#targCurs and
#lLiftedKind, you may or may not need these depending on your application. The first,
#targCurs checks the targetting cursor and if it's a value of 1 (target cursor is present) then the sub returns a TRUE and doesn't execute the rest of the script. The
#lLiftedKind checks if you have anything being dragged at the moment. Again, if theres something on your cursor, the sub returns a TRUE and loops back instead of continuing.
I think most scripts you have will want to include those.
After that is just a namespace check to find out the status of the healer and looter. If either is active, then a TRUE is returned and the script cycles back instead of continues. If a FALSE is returned then the script is allowed to continue.
You can do the same thing with any script. If you want to run multiple scripts at the same time, it's always a good idea to set your priorities to which will be main scripts, then "pause" the others when the mains are running. You can use Globals like TM has here.