Всем привет! Есть такая проблема - пишу вот такой код для того чтобы объект поворачивался в сторону мыши

Код AS3:
object.addEventListener(MouseEvent.MOUSE_MOVE, mouseMovik);
function mouseMovik(e:MouseEvent):void
{
var xl:Number = e.stageX - object.x;
var yl:Number = e.stageY -object.y;
_angle = (Math.atan2(yl, xl)) * (180/ Math.PI);
object.rotation = _angle;
}
Но хочется чтобы
1)все это действие происходило при не сразу при наведении мыши на объект, а при нажатии на объект и потом, чтобы при отпускании вращение останавливалось
2)Чтобы вращение плавно происходило. Думал задать скорость вращению, но мозги лопаются - как это реализовать)