всем привет. нашел исходник вращения пушки (слежение за курсором) вокруг своей оси и решил его переделать на повороты на 90 градусов (пушка смотрит прямо, от центра поворачивается направа на 90 и не поворачивается дальше и так же налево), пробовал менять значения - но у меня все не выходит..

Код AS3:
private function updateRotation():void
{
// РАСЧЕТ ВРАЩЕНИЯ ПУШКИ
dx = player.x - stage.mouseX;
dy = player.y - stage.mouseY;
// В КАКУЮ СТОРОНУ ПОВОРАЧИВАТЬ
var rotateTo:Number = getDegrees(getRadians(dx, dy));
// ПОВОРАЧИВАТЬ ОТ 0 ДО 360 ГРАД
if (rotateTo > player.rotation + 180) rotateTo -= 360;
if (rotateTo < player.rotation - 180) rotateTo += 360;
// ЛЕГКОСТЬ ВРАЩЕНИЯ
trueRotation = (rotateTo - player.rotation) /rotateSpeedMax;
player.rotation += trueRotation;
}
public function getRadians(delta_x:Number, delta_y:Number):Number
{
var r:Number = Math.atan2(delta_y, delta_x);
if (delta_y < 0)
{
r += (2*Math.PI);
}
return r;
}
public function getDegrees(radians:Number):Number
{
return Math.floor(radians/(Math.PI/180));
}
пробовал и rotateTo менять, и r - но получается какая-то ересь..