The simple code:
Code:
action follower()
{
	while(!player){wait(1);}
	//////////
	c_setminmax(my);
	vec_fill(my.min_x,-24);
	vec_fill(my.max_x,24);
	//////////
	VECTOR temp,temp2;
	while(1)
	{
		draw_point3d(player.x,COLOR_RED,50,10);
		//////////
		ent_path_get_target(my,player.x,temp);
		ent_path_draw(my);
		//////////
		temp.z = my.z;
		if(vec_dist(temp,my.x) > 16)
		{
			vec_diff(temp2,temp,my.x);
			vec_to_angle(temp,temp2);
			my.pan += ang(temp.x-my.pan)*0.5*time_step;
			result = c_move(me,vector(maxv(10-0.1*abs(ang(temp.x-my.pan)),0)*time_step,0,0),nullvector,IGNORE_ME|IGNORE_PASSABLE|GLIDE);
			c_trace(my.x,vector(my.x,my.y,-1000),IGNORE_ME);
			my.z += (target.z+55-my.z)*0.5*time_step;
		}
		wait(1);
	}
}



The bidirectional path I made:


And here is the result:


It traces through blockes...
Ofcourse I tryed USE_BOX. But that didn`t help at all.

Last edited by Random; 12/26/13 22:14.