拖动的对象在动作脚本3中重新回到原始位置

时间:2015-09-30 04:41:06

标签: actionscript-3 flash

我的舞台上有一个可以拖动的物体。在释放后,它会重新回到原来的位置。我希望能够将它补间回到原来的位置,这样它看起来很光滑而且不会起伏不定。这是我到目前为止的代码:

var startPosition:Point;

blockSmallz.addEventListener(MouseEvent.MOUSE_DOWN, dragz);
stage.addEventListener(MouseEvent.MOUSE_UP, dragStopz);

function dragz(e:Event):void {
blockSmallz.startDrag();
startPosition = new Point( blockSmallz.x, blockSmallz.y);
}

function dragStopz(e:Event):void {
blockSmallz.stopDrag();
//set back or tween position

blockSmallz.x = startPosition.x;
blockSmallz.y = startPosition.y;
startPosition = null;

}

1 个答案:

答案 0 :(得分:0)

您需要基于代码的补间库。我建议学习GTween:http://www.gskinner.com/libraries/gtween/

导入图书馆后,在您去的地方:

GTweener.addTween (blockSmallz, 1, { x:startPosition.x, y:startPosition.y } );

您只需插入一行代码即可将其补间。简单的事情:

System.IO.Stream stream = HQ.Util.General.ResourceHelper.LoadResourceFromUri( HQ.Util.General.ResourceHelper.GetLocationUri("Icons/About.png")); Image image = new Bitmap(stream);