1

我在网上找到了一些关于如何在课堂上使用 actionscript 3 制作动画的资料,但一直找不到真正好的教程。我想从一个类控制动画,因为在某些时候我打算从 Flash IDE 转移到使用 Flash 开发,在那里我将无法访问 Flash IDE 的时间线。

我必须能够控制一个初始动画(打开一个袋子),它加入一个动画循环(搜索一个袋子)。

到目前为止,我能够做到这一点的唯一方法是添加一个事件侦听器来侦听初始动画的最后一帧。然后当 initialAnimation.currentFrameLabel = "Last" 然后我 gotoAndStop("animationLoop")。

这一直工作正常,如果有点费时。我只是想知道是否有更好,更简单的方法来做到这一点?谁能告诉我或指向一个做得更好的教程?非常感谢!罗马诺

4

2 回答 2

0

这取决于你想做什么:

通常,如果您与艺术家一起工作或想做非代码驱动的动画,“最好的方法”通常是监听发生的事情,然后开始动画并在动画的最后一帧(或者当你想要将控制权返回给代码)您创建一个事件,或使用回调或其他方式让代码通知动画完成或到达某个点。

如果你想用代码做一些事情,最简单的方法是使用外部动画库。

使用这些库,您将编写类似于:

function fadeOut():void {
    mc.alpha = 1;
    Tweener.addTween(mc, {alpha:0, time:0.275, delay:1, onComplete:onDone});
}

function onDone():void {
    trace("Animation finished");
}
于 2013-09-11T16:25:26.087 回答
0

我建议您使用 addFrameScript 方法,而不是使用事件侦听器。本质上,您可以在达到特定帧号时触发一个方法。

阅读以下问题以获取更多信息。 actionscript3 addFrameScript 的意义何在

于 2013-09-11T16:27:00.857 回答