enhancing all that...
Code:
define spot_track, skill51;
define target, skill1;

function spot(ent)
{
if (ent == null) {
my.spot_track = 0;
my.target = null;
return;
}

my.target = handle(ent);
my.spot_track ++;

while (my.spot_track == 1) {
if (my.target != null) {
you = ptr_for_handle(my.target);
vec_set(temp.x, you.x);
vec_sub(temp.x, my.x);
vec_to_angle(my.pan, temp.x);
}
wait(1);
}
}



haven't tested that, though i think you get the idea of comfort you have with such little functions. so instead of requesting an "engine" feature, you should rather think over your problem once more.

joey.