Flash AS 3.0实例教程:Main类打造发散效果 -电脑资料

时间:2018-01-04 07:29:30
染雾
分享
WORD下载 PDF下载 投诉

1、新建Flash文档,550*400,其它默认,

Flash AS 3.0实例教程:Main类打造发散效果

2、创建影片剪辑,选椭圆工具,笔触无,填充色放射渐变,画一个椭圆(形状自定,我相你会比我画得更好),右键库中设置链接,类名Ball。

3、返回场景1,第一层建背景(随意),新建as图层,在as图层第一帧输入代码:

//小球的初始位置
[code]//小球的初始位置
var ballx:Number = 275;
var bally:Number = 400;
//小球运动速度
var speed:Number = 5;
stage.addEventListener(MouseEvent.CLICK,shoot);
function shoot(e:MouseEvent):void
{
        for(var i:int = 1;i<9;i

++)
        {
                //从库中创建小球
                var ball:Ball = new Ball();
                //初始化小球位置
                ball.x = ballx;
                ball.y = bally;
                //根据三角函数计算小球的速度
                ball.spdx = cosD(i*-20)*speed;
                ball.spdy = sinD(i*-20)*speed;
                //注册enterFrame事件
                ball.addEventListener(Event.ENTER_FRAME,ballMove);
                e.target.addChild(ball);
        }
}
function ballMove(e:Event):void
{
        //获取小球的引用
        var obj:MovieClip = e.target;
        //设置小球的坐标,实现运动
        obj.x += obj.spdx
        obj.y += obj.spdy
        if(obj.y<0||obj.x<0||obj.x>550||obj.y>400)
        {
                //移除enterFrame事件
                obj.removeEventListener(Event.ENTER_FRAME,ballMove)
                //从显示列表删除
                stage.removeChild(obj)
        }
}
//角度转换为弧度
function angleToRadian(angle:Number):Number
{
        return angle*(Math.PI/180);
}

function sinD(angle:Number):Number
{
        return Math.sin(angleToRadian(angle));
}
function cosD(angle:Number):Number
{
        return Math.cos(angleToRadian(angle));
}

Flash AS 3.0实例教程:Main类打造发散效果 -电脑资料

手机扫码分享

Top