主题:  下雪效果制作

eminem

职务:普通成员
等级:1
金币:1.0
发贴:174
注册:2003/11/12 21:52:58
#12003/11/15 2:42:54
提供源文件下载

相关文件:点这儿打开
方法
首先在主场景中只画一个小圆点,剩下的就交给AS完成好了
将雪花的MC命名为snow

在“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;
}  //当雪花飘出主场景时,重新回到主场景的上方。
}

新建一图层,命名为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轴的比例)来决定,大一点的雪花的透明就越高,小一点的雪花透明度就越底。