随机化一些影片剪辑的动画值

时间:2012-07-11 16:14:18

标签: actionscript-3 flash

说,我从第0帧开始补间动画,它的大小为100x100。然后在第20帧,大小变为100x500,因此movieclip将垂直拉伸。如果我希望值在450到550之间,那么当我快速播放动画时看起来不一样怎么办?我觉得它需要动作脚本(3.0首选),但我尝试访问movieclip的变量,找不到任何接近我的要求。

主要是我想随机化大小,位置,倾斜,如果可能的话,还有辉光过滤器的颜色。 (例如R + - 150%的10%和绿色+ - 64%的10%)

在批量生成此MC时会很有用,因此动画看起来不会那么重复。

3 个答案:

答案 0 :(得分:1)

在您的情况下,您可能不想“评分”动画,而是使用ActionScript 3编写调整大小动画的脚本。这可以通过使用Flash提供的AS3 Tween类来完成。

// import the namespaces
import fl.transitions.Tween;
import fl.transitions.easing.*;

var endHeight:Number = Math.random() * 100 + 450;
var startHeight:Number = 100;
var myTween:Tween = new Tween(your_movie_clip, "height", Elastic.easeOut, startHeight, endHeight, 20);

有关Tween课程的更多信息,请访问Adobethis tutorial

答案 1 :(得分:0)

您想要使用Math.random()函数。

//$mc is my movieclip
$mc.width = (Math.random()*100)+450;

答案 2 :(得分:0)

由于您要创建的补间是动态的,并且在编译期间无法通过Flash预先计算,因此您必须以编程方式创建它。

为此,您可以从头开始手动执行,也可以使用Tween类。

// myMC is the movie clip reference you want to resize
new Tween(myMC, "height", Bounce.easeIn, 100, 450 + Math.round(Math.random() * 100), 20, false);

看看http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/transitions/Tween.html

微米。