[ActionScript 3.0] AS3.0 下雨及涟漪效果

时间:2023-03-09 02:11:27
[ActionScript 3.0] AS3.0 下雨及涟漪效果

帧代码:

stage.frameRate = 80;

function init(x1:Number,y1:Number)
{ var mc:MovieClip=new MovieClip(); addChild(mc); mc.x = x1; mc.y = y1; mc.graphics.lineStyle(0.5,0xbbffff,0.6); mc.graphics.drawEllipse(-1,-0.3,2,0.6); mc.addEventListener(Event.ENTER_FRAME,frame); var v0 = 0.5 + 0.3 * Math.random(); function frame(e)
{ mc.scaleX = mc.scaleY += v0; mc.alpha > 0 ? mc.alpha -= 0.02:[mc.removeEventListener(Event.ENTER_FRAME,frame),removeChild(mc),mc = null]; } } function xiayu()
{ var timer:Timer = new Timer(200,2); timer.addEventListener(TimerEvent.TIMER,onTimer); var mc:MovieClip=new MovieClip(); mc.graphics.beginFill(0xbbffff,0.8); mc.graphics.drawEllipse(-0.5,-2,1,4); addChild(mc); mc.scaleX = mc.scaleY = 0.7 + 0.3 * Math.random(); var x0 = mc.x = 50 + Math.random() * 450; mc.y = -10 - 20 * Math.random(); var y0 = 30 + 350 * Math.random(); mc.addEventListener(Event.ENTER_FRAME,frameB); function frameB(e)
{ if (mc.y < y0)
{ mc.y += 5; }
else
{ mc.removeEventListener(Event.ENTER_FRAME,frameB); removeChild(mc); mc = null; init(x0,y0); timer.start(); } } function onTimer(e)
{ init(x0,y0); } } var t:Timer = new Timer(100,0); t.addEventListener(TimerEvent.TIMER,onT); t.start(); function onT(e)
{ xiayu(); xiayu(); }