Flash AS制作盛开的花朵视觉特效(2)

http://www.itjxue.com  2015-07-17 23:39  来源:未知  点击次数: 



每个花瓣的形状不可能一样,因此,我们有必要多做几个花瓣,你可以重复上述步骤,做出"huanban02","huanban03",让它们的外形和"huanban01"有所区别,轻微舞动的频率也有所区别。

接下来一步,我们需要把元件库里的这几个花瓣加上标识符,以便将来调用。元件库里鼠标右键点元件"huanban01",在菜单里选择"链接...”,弹出对话框,勾选“为actionscript导出”,“在第一帧导出”,然后在标识符一栏里写上"huanban01",点确定。参见图pic03.jpg:

Flash AS制作盛开的花朵视觉特效_IT教学网itjxue.com整理

"huanban02","huanban03"一样加上标识符。注意元件的标识符是唯一的,不可重复,每一个元件加上标识符之后,运行时就可以将他们随时调用出来使用了。

下面需要做一层花瓣,新建一个MC,命名为“花瓣层1”,帧上大概参见图pic05.jpg:

Flash AS制作盛开的花朵视觉特效_IT教学网itjxue.com整理

在第1帧里写上:

quan=random(3)+10;
n=1;

quan这个变量是用来计算该层花瓣一共有多少个,如果写quan=10,那么该层花瓣就一共有10片,random(3)是一个随机函数,它的作用是随机生成0-2的随机整数,那么quan的实际值应该为10-12的随机整数。n=1,是计数器,不赘述。在第2帧里写上:

for (i=1;i<=quan;i++) {
        temp=random(3)+1;
        this.attachMovie("huaban0"+temp,"huaban"+n,n)
        lik=this["huaban"+n]
        lik._rotation=360/quan*i+random(10)-5;
        lik._alpha=random(10)+60;
        lik._xscale=random(20)+100;
        lik._yscale=random(20)+100;
        temp=random(2);
        if (temp==0) {
                lik._yscale=-lik._yscale;
        }
        n++
}
this.attachMovie("huaban0"+temp,"huaban"+n,n) 的作用就是随机从库里抽出"huaban01","huaban02","huaban03"元件,命名为,"huaban"+n的实例,复制到本元件内
lik=this["huaban"+n]是用lik变量锁定该复制的实例,方便后面操作。
lik._rotation=360/quan*i+random(10)-5; 的作用就是把花瓣环绕分布,+random(10)-5的目的是为了让花瓣的旋转角度有一定偏差,不至于太平均。
lik._alpha=random(10)+60;的作用是让花瓣的透明度在60-70之间取随机值。
lik._xscale=random(20)+100;的作用是让花瓣的长度在100%到120%之间取取随机值。
lik._yscale=random(20)+100;的作用是让花瓣的宽度在100%到120%之间取取随机值。
temp=random(2);
if (temp==0) {
lik._yscale=-lik._yscale;
}

以上语句的作用是随机让花瓣以中轴进行翻转。n++;计数器+1。在第90帧写上:

stop();

如此,该层花瓣已经完成,可以把该MC拖入场景,观察效果

源文件下载: test04.rar

(责任编辑:IT教学网)

更多

推荐Flash actionscript文章