Flash ActionScript 3.0 细雨涟漪
//帧速率设置为80
stage.frameRate = 80;
//涟漪函数
function ripple(X:Number,Y:Number )
{
var mc:MovieClip =new MovieClip();
addChild(mc);
mc.x = X;
mc.y = Y;
mc.graphics.lineStyle(0.5,0xbbffff,0.6);
mc.graphics.drawEllipse(-1,-0.3,2,0.6);
mc.graphics.endFill();
mc.addEventListener(Event.ENTER_FRAME ,fun);
var v0 = 0.5 + 0.3 * Math.random();
function fun(e)
{
mc.scaleX = mc.scaleY += v0;
mc.alpha > 0 ? mc.alpha -= 0.02:[mc.removeEventListener(Event.ENTER_FRAME,fun),removeChild(mc),mc = null];
}
}
//下雨函数
function rain()
{
var mc:MovieClip =new MovieClip();
mc.graphics.beginFill(0xbbffff,0.8);
mc.graphics.drawEllipse(-0.5,-2,2,5);
addChild(mc);
mc.scaleX = mc.scaleY = 0.7 + 0.3 * Math.random();
var x0 = mc.x = Math.random() * 550;
mc.y = -10 - 20 * Math.random();
mc.addEventListener(Event.ENTER_FRAME ,rainfun);
var y0 = 300 + 250 * Math.random();
function rainfun(e)
{
if (mc.y < y0)
{
mc.y += 5;
}
else
{
mc.removeEventListener(Event.ENTER_FRAME ,rainfun);
removeChild(mc);
mc = null;
ripple(x0,y0);
}
}
}
var t:Timer = new Timer(50,0);
t.addEventListener(TimerEvent.TIMER,tfun);
t.start();
function tfun(e)
{
rain();
}
vansburn
2014/05/20