I didn't test this but it should work theory, just put this on the primary mob. You don't need any code on the leashed mob.
#Place code this on the primary mob
#Lets pretend mob that is leashed to this mob is ID 1001.
#Put this on a say 30 sec timer? Even a minute would be ok. This should cause no huge increase in cpu use at all......
Code:
if ($timer eq "LeashCheck") {
$LeashedID = $entity_list->GetMobByNpcTypeID(1001);
$distanceCHK = $LeashedID->CalculateDistance($x, $y, $z);
#This will calculate the distance between this mob at current location
# and the mob that is leashed to it.
if ($distanceCHK >= 500) { #Whatever distance you want
$LeashedID->WipeHateList();
$LeashedID0->GMMove($x, $y, $z, 1);
#Clears hate list of leashed mob and warps it back to first mob.
}
}