well hey,

the cats out of the litterbox...or the bag.
sorta speak. wink

here is something that may help you
and others here. I'm still learning and experimenting with it.

here are some pics








and here is the codez.
gimme da codez. smile

Code:
 //////////////////////////////
#include <acknex.h>
#include <default.c>
VECTOR* mv[3];


BMAP* babel="babylon11.jpg";


//define 'user-defined' function first......
//just the hearder definition.
//to be used in function main() and also in other functions too...
function clearscreen();


function move_picture() {

//vector components for background picture...	
//	mv.x=10;
//	mv.y=100;
//	mv.z=40;
	
	
	while(1) {
		
		  if (key_w)
		  {  
		  	     clearscreen();
		  	   vec_add(my.x,vector(2*time_step,0,0));
		  	   
		}
		  
		   
		  if (key_s) 
		  {
		  	    clearscreen();
		     vec_add(my.x, vector(-2*time_step,0,0));  
		    
     	}  
		  
		    //use first for the y vector component
		  
		   if (key_a) 
		   {	  	   clearscreen();	 
		   	  vec_add(my.y, vector(0, 2*time_step, 0));
		   	  	  
	   	}
		    
		   
		   
		   if (key_d) 
		   {	  	   clearscreen();	 
		   	  vec_add(my.y, vector(0, -2*time_step, 0 ));
		   	  	  
	   	}
		   
		   //use for the vector z componet
		   
		   if (key_z)
		   {
		   	 clearscreen();
		   	vec_add(my.z, vector(0, 0, 2*time_step));  	
		   }
		   
		  if (key_x)
		  {
		       clearscreen();
		      vec_add(my.z, vector(0,0, -2*time_step) );
		      
	     }     
	  
		 
		 
		 c_move (me, nullvector,  vector( mv.x, mv.y, mv.z), GLIDE);
		 wait(1);
	}
}

function clearscreen()
{
	
	//clears the screen to a black-full color
	//not 0,0,0 or empty transparent black color...
	//useful for clearing/erasing aftereffects of moving/rotating/transformations
	
	 vec_set(sky_color,vector(10,10,10));  
	 
	  return(1);	 
	
	
	
}

function main() {
	level_load ("");
	wait(2);	// wait until the level is loaded
	
	//or just call clear screen too but with vector(10,10,10)  ;)
	 vec_set(sky_color,vector(0,0,0)); // almost black sky
	 
	 //vector 300,100,0...the standard here.
   ent_create("babylon11.jpg", vector(10,100,40), move_picture);	
    //vec_set(camera.x, vector(-150, 10, 10));
	
	
	
	
   //	vec_set(camera.x, vector(-500, 0, -10));...the standard and works. ;)
   
     vec_set(camera.x, vector(-500, 0, -10));
	ent_create("RED_DRAGON.mdl", vector(-310, 0,-100),NULL);
	//ent_create("land.mdl", vector(-900,2000, -400),NULL);
}	



next logical steps.....use another entity function for the dragon and perhaps its own vectors and key controls too.


cheers