Thats an good idee!!
Pleace tell me what I did wrong, I tryed to wright it in lite-c.
ENTITY* cam;
var center;
var max_speed = 7;
action fly_camera()
{
clip_size = 0;
vec_set (center, my.pos);
set(my,INVISIBLE);
set(my,PASSABLE);
camera.visible = off;
cam.tilt -= 20;
cam.pos_x = 0;
cam.pos_y = 0;
cam.size_x = screen_size.x;
cam.size_y = screen_size.y;
ent_path("campath");
ent_waypoint(my._target_x, 1);
my.x = my._target_x;
my.y = my._target_y;
my.z = my._target_z;
cutcamera.visible = on;
while(1)
{
cutcamera.x = my.x;
cutcamera.y = my.y;
cutcamera.z = my.z;
cutcamera.pan = my.pan;
vec_set(max_speed, my._target_x);
vec_sub(max_speed, my.x);
if (vec_to_angle(my.pan, max_speed);
{
ent_nextpoint(my._target_x);
}
}
}