try...
action player_action()
{
player = me; // I'm the player
wait(1);
c_setminmax(me);
me.min_z += 4;
ent_gravity = 1.6;
set (me, INVISIBLE); // no need to see player's model in 1st person mode
while (1)
{
handle_player_movement();
vec_set (camera.x, player.x); // use player's x and y for the camera as well
camera.z += 30; // place the camera 30 quants above the player on the z axis (approximate eye level)
camera.pan -= 5 * mouse_force.x; // rotate the camera around by moving the mouse
camera.tilt += 5 * mouse_force.y; // on its x and y axis
player.pan = camera.pan; // the camera and the player have the same pan angle
wait(1);
}
}
1) I would set the pointer at the beginning of the action.
2 c_setminmax should be changed at least 1 frame after the object creation.
3) me and my are the same, i just prefer me LOL.