Hola. Es interesante tú aplicación y no es tan complicado como parece.
Simplemente a la punta de la pistola pon un "puntito" y lo haces movieClip (yo lo llamo cpInicio) y a partir de ahí determinas el X y el Y inicial. Para saber a dónde llegará toma el X y el Y del mouse y ya está ^_^
Para hacerlo avanzar toma el X final y resta el X inicial dividido entre la cantidad de ciclos que quieres que avance la bala y listo ^_^
Código ActionScript:
Ver originalvar varXInicial:Number; //Se declara la variable que guardará el X inicial
var varXfinal:Number; //Se declara la variable que guardará el Y final
var varYinicial:Number; //Se declara la variable que guardará el Y inicial
var varYfinal:Number; //Se declara la variable que guardará el Y inicial
var varVelocidad:Number=10; //Entre menor sea el número más rápido va
onMouseDown=function(){ //Si haces click inicia la función
varXinicial=cpInicio._x; //Se captura el X inicial con respecto a la bolita lavanda
varYinicial=cpInicio._y; //Se captura el Y inicial con respecto a la bolita lavanda
varXfinal=_xmouse; //Se captura el X final con respecto a la posición del mouse
varYfinal=_ymouse; //Se captura el Y final con respecto a la posición del mouse
attachMovie("cpBala", "cpBala", 1, {_x:varXinicial, _y:varYinicial}); // se pone la bala negra en el escenario
var xProrcion:Number=(varXfinal-varXinicial)/varVelocidad; //Se hace la operación para saber qué camino X recorrerá la bala
var yProrcion:Number=(varYfinal-varYinicial)/varVelocidad; //Se hace la operación para saber qué camino Y recorrerá la bala
this.onEnterFrame=function(){ //Inicia la función de cada ciclo
if(cpBala._x<varXfinal){ //Si el X de la bala es menor al X del mouse entonces...
cpBala._x+=xProrcion; //la bala avanzará X la porción calculada
cpBala._y+=yProrcion; //la bala avanzará y la porción calculada
}else{ //sI x de la bala es igual o mayor al x del mouse entonces...
delete(this.onEnterFrame); //Se elimina la función del ciclo y termina de avanzar la bala
}
}
}
Acá te dejo el ejemplo.
Saludos ^_^