OK, nothing there to help or hinder me then.
I also assume by looking at the code that ...
A> The entities 'ent_gameHand[xx]' are the ones that need to face the screen.
B> The vector "pos" is no longer needed after the "vec_set(ent_gameHand[i].x, pos);"

So, as untested code, give this a try...
Code:
//Replace your existing lines ...
   ...
   ent_gameHand[i].pan = camera.pan - 90;
   ent_gameHand[i].roll = camera.tilt + 90;
   ...

//With the following code ...
   ...
   //set 'pos' to x,y screen co-ords of entity position (z unused)
   vec_set(pos, ent_gameHand[i].x);
   vec_to_screen(pos, camera);

   //set 'pos' to XYZ co-ords of screen-plane over entity
   pos.z = 0;
   vec_for_screen(pos, camera);

   //make entity "face" the XYZ co-ords of screen over entity
   vec_diff(pos, pos, ent_gameHand[i].x);
   vec_to_angle(ent_gameHand[i].pan, pos);
   ...


This code isnt 'optimised' at all, in order for you to see the logic...


This code IS optimised but still untested...
Code:
...
   vec_to_screen(vec_set(pos,ent_gameHand[i].x),camera);
   pos.z = 0;   vec_for_screen(pos,camera);
   vec_to_angle(ent_gameHand[i].pan,vec_diff(0,pos,ent_gameHand[i].x));
...




"There is no fate but what WE make." - CEO Cyberdyne Systems Corp.
A8.30.5 Commercial