here's one that i use:
Code:
FUNCTION rotate_entity_(rotate_angle,rotate_speed)
{
IF (my.pan == rotate_angle) { return; }
result = ang(rotate_angle - my.pan);
IF (result > 0) { my.pan += rotate_speed * time_step; }
IF (result < 0) { my.pan -= rotate_speed * time_step; }
IF (ang(rotate_angle - my.pan) < 0 && result > 0) { my.pan = rotate_angle; }
IF (ang(rotate_angle - my.pan) > 0 && result < 0) { my.pan = rotate_angle; }
}
to use it add these lines to the action of the object to face the player:
var pan_pos;
vec_to_angle (pan_pos, player);
rotate_entity_(pan_pos,5);