AS2雪花飘落效果

由 夕空 撰写于  2009年6月18日

这是我在网络上得到的这段代码,对我来说是非常经典的一段代码,我改动过很多种版本来达到我需要的不同效果,这是那段原始代码,不过用的多了我也感觉到了此代码的一些缺点,如果你做的flash很耗内存,那么当这段代码所创建mc或载入的mc就会播放速度变慢,这样进来的mc就越来越多,然后就会越来越慢,直至...但这种情况很少发生,还能做多复杂的flash?(怪不得说as3.0要比as2.0运算速度快了很多倍)

//飘落效果
var i:Number = 0;
var loopID:Number = setInterval(this, ""loop"", 80);
function loop() {
var mc:MovieClip = createParticle(i);
mc._x = Math.random()*600;
mc.xspeed = 4-Math.random()*8;
mc.yspeed = Math.random()*4+2;
mc._alpha = Math.random()*80+50;
//后加的大小控制
mc._xscale = Math.random()*90+10;
mc._yscale = Math.random()*90+10;
mc.onEnterFrame = function() {
//直行改成0
this._x += this.xspeed+(_root._xmouse-300)*.03;
this._y += this.yspeed;
if (this._x<0 || this._x>600 || this._y>515) {
this.removeMovieClip();
}
updateAfterEvent();
};
i<300 ? i++ : i=0;
}
//这里你可以改成载入库里的mc
function createParticle(depth:Number):MovieClip {
var mc:MovieClip = this.createEmptyMovieClip(""mc""+depth, depth);
mc.lineStyle(Math.random()*8+2, 0xFFFFFF);
mc.moveTo(0, 0);
mc.lineTo(.2, 0);
return mc;
}



声明:星耀夕空|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - AS2雪花飘落效果


欢迎光顾我的小站!