目的:用AS来模拟雪花飘落的场景。
特别说明: ①:AS应用 ②:在主场景中只画一个小圆点,剩下的就交给AS完成好了。
制作步骤: 1、打开Flash MX新建一影片。 2、适当调整影片属性,大小为500×400,背景为黑色。 3、将第一层重命名为“雪花”。在主场景中只画一个白色无线框的小圆点,大小为10×10象素。将其转换为MC(电影符号),命名为“雪花”。 
4、在“雪花”MC的属性栏中,将其命名为“snow”。(图2)  5、在“snow”中输入如下AS语句: onClipEvent (enterFrame) { //每播放一帧就执行一次下面的AS this._x += Math.random()*(this._xscale)/10; this._y += Math.random()*(this._yscale)/10;//让雪花在X、Y轴方向上运动,每次移动的距离为自身大小的1/10左右,为加强随机效果,我们用到Math.random()来更好的控制。 if (this._x>500) { this._x = 0; } //当雪花飘出主场景时,重新回到主场景的左方。 if (this._y>400) { this._y = 0; } //当雪花飘出主场景时,重新回到主场景的上方。 }
6、新建一图层,命名为AS,再此图层中输入如下AS: aiyi = 1; while (aiyi<=200) { duplicateMovieClip("snow", "snow"+aiyi, aiyi); setProperty("snow"+aiyi, _x, random(500)); setProperty("snow"+aiyi, _y, random(400)); setProperty("snow"+aiyi, _xscale, Math.random()*60+40); setProperty("snow"+aiyi, _yscale, eval("snow"+aiyi)._xscale); setProperty("snow"+aiyi, _alpha, eval("snow"+aiyi)._xscale+random(30)); aiyi++; } 以上的AS的作用是: 复制200个雪花MC,并为其随机放到一个位置,而雪花的大小也是随机产生,而雪花的透明度由雪花的大小(X、Y轴的比例)来决定,大一点的雪花的透明就越高,小一点的雪花透明度就越底。这样的效果就是近的雪花看的清楚,而远的雪花有点模糊……更加逼真……
好了,还等什么呢?Ctrl+回车,开始下雪吧!
[ 点击下载 ] http://www.flash8.net/bbs/uploadfile/200362515223284776.fla |