Цитата:
|
Мб а вас не до конца понял?
|
Омг. да таки не до конца поняли.
Вот что я имел ввиду:

Код AS3:
var anglePast:Number; //подумайте над названиями переменных, да это тоже важно
var clicked:Boolean=false; // старайтесь использовать по возможности естественные условия
stage.addEventListener (MouseEvent.MOUSE_DOWN , mouseDownFunc);
stage.addEventListener (MouseEvent.MOUSE_UP , mouseUpFunc);
function mouseDownFunc(e:MouseEvent):Boolean
{
//стоит вычислять anglePast при нажатии кнопки, ага
anglePast = mouseAng(round);
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveFunc);
}
function mouseUpFunc(e:MouseEvent):Boolean
{
stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveFunc);
}
function mouseMoveFunc(e:MouseEvent):void
{
var currentAng:Number = mouseAng(round);
round.rotation += currentAng - anglePast;
anglePast = currentAng;
}
function mouseAng(obj:DisplayObject):Number{
//все типичные и часто повторяющиеся операции выносите
//в отдельные функции
return Math.atan2(mouseY - obj.y, mouseX - obj.x) * 180 / Math.PI;
}
Цитата:
|
А в кадре ну просто так быстрее набросать было пример. Потом естественно все будет в классе.
|
Избегать кода в IDE нужно хотя-бы из-за отсутствия там вменяемого автокомплита, использовали-бы нормальный редактор, досадных ошибок с тем-же Math.atan2() просто не было бы.