您当前所在的位置:首页>>设计教程>>flash>>正文 文章正文
雪夜的作法讲解
作者: 佚名 点击数:

 1.建立一个新的动画,将舞台设为450*250 pixels;background颜色为#000000(众人语:搞了半天不就是黑色嘛);framerate为20fps,这是帧运动速度,假如设得太大的话雪就不是飘了,而是落或者下了,没意境,呵呵. 
 2.用ctrl+f8建立一个名为snowflake的mc.如放大后的图,具体定多大,参考源文件。 
 
 3.在时间轴上建一个图层,用File->import(ctrl+R)导入一个小屋,小屋怎么画就不是本帅哥的事了。搞定后如图. 
 

 4.再建立一个图层,用ctrl+L把资料库面板调出来,把刚才做的名为snowflake的mc拖至舞台的任何一个位置,因为我是用AS控制它的位置的。所以放哪儿没关系,您爱放哪,就放哪吧。定义它的instance name为flake,在MX中用ctrl+f3调出属性面板,左边就可以定义instance name。 这样就建好了一个名为flake的对象实例,供后面复制多个雪花用。如图。 
 
 5.再在主场景建立一个图层,也就是第三个图层,用来编AS.代码如下: 
 //------------------------------------- 
 //第一帧 
 //------------------------------------- 
 //定义雪花飘落的范围 
 moviewidth = 450; 
 movieheight = 230; 
 fscommand("allowscale", "false");//不允许缩放。 

 
 //------------------------------------ 
 //第二帧的as. 
 //------------------------------------- 
 index++;//复制雪花的下标,可以这样说吧,不过不是数组的。 
 duplicateMovieClip("flake", "flake"+index, index);//复制了一个雪花。 

 
 //--------------------------------------------------- 
 //第三帧的as. 
 //转到第二帧,继续复制雪花,不过下一个index值就加1了。 
 //--------------------------------------------------- 
 gotoAndPlay(_currentframe-1); 

 6.点到那个名为flake的对象实例,MX用f9调出Action面板编辑as,flash5中用ctrl+alt+A.其实这一步可以在第四步后就可以做了。这样做大家有点儿不明白,所以放在这一步好讲解。这里的as是object as,不是frame as,两者有一定的区别。不知道的话看书或者问我吧,欢迎美女前来!AS 代码如下: 

 onClipEvent (load) { 
 //随机定义雪花出现的位置 
 _x = random(_root.moviewidth); 
 _y = -1; 
 //随机定义雪花的大小,使有的大,有的小这样才好看。 
 ran = random(61)+70; 
 _xscale = ran; 
 _yscale = ran; 
 //随机定义雪花的飘落速度 
 speed = random(4)+2; 
 } 
 onClipEvent (enterFrame) { 
 //如果雪花没有飘到底部,继续 
 if (_y<_root.movieheight) { 
 //雪花新的位置,这样就移动了。 
 _x += (Math.sin(_y/20)*1.5); 
 _y += speed; 
 } else { 
 //如果雪花飘至底部,删除,省得占内存,嘿。 
 removeMovieClip(""); 
 } 
 } 

 按ctrl+enter测试,打完收工! 
  总结:1.这里的index没有初始化,你可以在第一帧初始化。默认值为0. 
  说说编程作风问题,其实编大一点的就应该初始化,因为要改的时候就好改,而且明朗,要不然别人看你的 as的话一会儿又冒出一个不知道的变量来就头大了。这里的as较短,所以不必了.(美女语: AOL好cooool~~~~~~~~~!) 
 2.对象实例的object as中有一个onClipEvent(load)就是载入这个实例后会怎么怎么样,就是执行大括号后里的语句。enterFrame看名字也知道是过了一帧,怎么怎么样。 
  3.本例关键靠一个random函数,它在Math对象中。用它可以定义一个随机整数,比如说random(100),就可以随机搞出一个0--99的整数.

相 关 搜 索
今 日 头 条
 
最 新 热 门
最 新 推 荐
 
文章来源: 不详  更新时间:2004-6-20 13:48:49  责任编辑:stsee
  上一篇文章:flash件制作情书生成器
下一篇文章:片转场效果全教程
相关文章
用FLASH制作计数器
用Flash制作多用户密码登录模式
鼠标效果系列教程—会动的眼睛
制作你的3D模型教程
黑白电视雪花效果
片转场效果全教程
flash件制作情书生成器
超级简单的网页标题栏制作
制作无资料库电子贺卡
自制滚动条