Flash实现在花间自由地飞翔小鸟的效果

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

一只小鸟在花间自由地飞翔,忽上忽下,时快时慢,多么逍遥。这样的效果怎样实现呢?下面笔者就通过Flash来实现小鸟自由飞翔的效果。

1. 新建一个名为Bird的MC(影片剪辑),用逐帧动画制作一只小鸟原地拍翅膀飞的动画(如图)。

2. 在场景中新建一个层,导入背景(花丛),根据需要适当做一些修饰。

3. 在场景中新建一个名为bird的层,添加两个Bird实例到场景中,一个命名为fly1;另外一个通过变形翻转过来,变成反方向飞,命名为fly2;将两个实例重叠在一起。

单击bird层时间轴第一帧,输入以下代码:

qian=xia=xjia=yjia=true;

//定义几个布尔量,并设初值为真

i=random(8);

j=random(8);

//定义小鸟飞行的初速度

fly2._alpha=0;

//隐藏向左飞的小鸟

4. 单击时间轴第二帧,按F6插入一关键帧,输入代码:

if (xjia==true){

//x轴方向加速

if (i<=12){i+=1;}

else {xjia=false;} }

else {if (i>=0){i-=1}

else {xjia=true; i=random(8);} };

if (yjia==true){

if (j<=12){j+=1;}

else {yjia=false;}}

else {if (j>=0){j-=1}

else {yjia=true; y=rand

om(8);} };

if (qian==true){

//当小鸟向右飞行

fly1._alpha=100;

//头向右的小鸟显示

fly2._alpha=0;

if (fly1._x<=400){

fly1._x=fly2._x+=i;

if (xia){

if (fly1._y<=300){fly1._y=

fly2._y+=j;}

else {xia=false;}; };

if (xia==false){

if (fly1._y>=20){fly1._y=

fly2._y-=j;}

else {xia=true;}; };

}

else {qian=false;};

};

if (qian==false){

fly1._alpha=0;

fly2._alpha=100;

if (fly1._x>=30){

fly1._x=fly2._x-=i;

if (xia){

if (fly1._y<=560){fly1._y=

fly2._y+=j; }

else {xia=false;}; };

if (xia==false){

if (fly1._y>=20){fly1._y=

fly2._y-=j;}

else {xia=true;}; };

}

else {qian=true;};

};

5. 单击时间轴第三帧按F6插入关键帧,输入以下代码:gotoAndPlay(2);与第二帧形成循环。

至此,动画制作完成。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航