【 tulaoshi.com - Flash 】
本文由 中国 cao4811 原创,转载请保留此信息!
本系列Flash教程由中国Flash互助课堂专为Flash新手制作,更多教程和练习请点击这里,在这里有系列的教程、练习,并有老师对练习进行点评与指导,欢迎朋友们的光临!
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)在学习中遇到问题请到 论坛 发贴交流!
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)更多AS 3.0教程:http://www.jcwcn.com/portal-topic-topicid-2.html
效果演示:鼠标点击观看效果
1、新建Flash文档,550*400,其它默认。
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.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