Вот.
Code
private var speed:int = 10;
public function Main()
{
addChild(missile);
missile.x = 300;
missile.y = 200;
addEventListener(Event.ENTER_FRAME, playGame);
}
private function playGame(event:Event):void
{
var targetX:int = mouseX - missile.x;
var targetY:int = mouseY - missile.y;
missile.rotation = Math.atan2(targetY, targetX) * 180 / Math.PI;
//Скорость по x зависит от угла, когда он равен 90 градусам, или -90 градусам, vx должна быть равна 0.
var vx:Number = speed * (90 - Math.abs(missile.rotation)) / 90;
var vy:Number;//Скорость по y -это разность speed и vx.
if (missile.rotation < 0)
vy = -speed + Math.abs(vx);//идем вверх.
else
vy = speed - Math.abs(vx);//идем вниз.
missile.x += vx;
missile.y += vy;
}
Добавлено (12.10.2012, 17:05)
---------------------------------------------
Смотрите шаг 7, будет что-то не понятно - мне в л.с.