Alright, I changed some stuff, make sure to look at the comments:
Code:
bmap laserAim_map = "myLaserAimBitmap.bmp";

var laserAim_status = 0;

function effect_LaserAim()
{
	my.alpha = 60;
	my.bmap = laserAim_map;
	my.move = on;
	my.bright = on;
	my.beam = on;		// if beam doesn't look good, try my.streak = on; instead
	my.lifespan = 1;
}

function toggle_LaserAim()
{
	laserAim_status = !laserAim_status;
	
	var laser_pos[3];
	
	while(laserAim_status)
	{
		// Assumption: laser_pos is a vector which represents the current position
		// of the laser beam start
		
		vec_for_vertex(laser_pos,gun_entity,123); // fill in the correct data here
		
		vec_set(temp,vector(10000,0,0)); // length of your laser beam
		vec_rotate(temp,camera.pan);
		
		c_trace(laser_pos,temp,IGNORE_ME|IGNORE_PASSABLE);
		
		vec_set(temp,target.x);
		vec_sub(temp,laser_pos);
		
		effect(effect_LaserAim,1,laser_pos,temp);
		
		wait(1);
	}
}