[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.x550||obj.y400)
{
//移除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));
}
保存,按Ctrl+Enter测试,有问题回帖。
对本文感兴趣的朋友可以到这里提交作业、老师会为作业点评、加分:http://bbs.jcwcn.com/viewthread.php?tid=239321