You need to be calling vec_rotate WITHIN the while() loop in camera_follow() I think. Right now it's only being called once... you need to call it every time you reset the camera's position.


Try replacing the existing function with this.
Code:
VECTOR* temp_vec=(x=0;y=0;z=0;}
function camera_follow(ENTITY* ent)
{
     vec_rotate(camera.x,ent.pan); // rotate the camera position with the player
     vec_set(camera.pan,vector(ent.pan,-10,0)); // look in player direction, slighty down
     while(1)
     {
          mywizard.pan = camera.pan;
          // you might need to toy with the values in this next line:
          vec_set(temp_vec,vector(50,-100,60)); // camera position relative to the player
          vec_rotate(temp_vec,camera.pan);
          vec_set(camera.x,temp_vec);
          vec_add(camera.x,ent.x); // add player position
          
          wait(1); 
     }

}



Last edited by Logan; 01/25/11 21:54.