Вращение получается строго одноразовое в таком случае, т.е. при следующем движении в контрольную точку объект cl уже не вращается. Вот полный код:

Код:
var Sym1x = sym1._x; var Sym2x = sym2._x; var Sym3x = sym3._x; // горизонтальные позиции точек
var Sym1y = sym1._y; var Sym2y = sym2._y; var Sym3y = sym3._y; // вертикальные позиции точек
var posx = 100; var posy = 100; // Начало движения объекта
var speed = 0.1; // скорость
var grad:Number = 0;
sym1.onRollOver = function ():Void {posx = Sym1x; posy = Sym1y;}
sym2.onRollOver = function ():Void {posx = Sym2x; posy = Sym2y;}
sym3.onRollOver = function ():Void {posx = Sym3x; posy = Sym3y;}
onEnterFrame = function ():Void
{
cl._rotation = grad;
grad += 36;
if (grad>=360){cl._rotation = 0; delete cl.onEnterFrame;}
if (cl._x < posx && cl._y < posy)
{
dis = Math.abs(posx - cl._x); cl._x += dis*speed;
dis = Math.abs(posy - cl._y); cl._y += dis*speed;
}
else if (cl._x > posx && cl._y > posy)
{
dis = Math.abs(posx - cl._x); cl._x -= dis*speed;
dis = Math.abs(posy - cl._y); cl._y -= dis*speed;
}
else if (cl._x > posx && cl._y < posy)
{
dis = Math.abs(posx - cl._x); cl._x -= dis*speed;
dis = Math.abs(posy - cl._y); cl._y += dis*speed;
}
else if (cl._x < posx && cl._y > posy)
{
dis = Math.abs(posx - cl._x); cl._x += dis*speed;
dis = Math.abs(posy - cl._y); cl._y -= dis*speed;
}
}