注册
 找回密码
 注册
江西广告网
查看: 285|回复: 0
打印 上一主题 下一主题

Flash游戏制作:弹力球(3)

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2009-2-26 10:27:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
二、游戏action控制代码的添加   1.为了方便我们对游戏进行修改和调试,我们一般都需要把大部分的控制代码专门放到一个独立的mc中,这也是一个制作的好习惯。   2.选取insertànew symbol菜单命令,在弹出的create new symbol面板中设置组件类型为movie clip,并给组件取名为Paddle Controller。   3.在组件Paddle Controller的编辑状态下,我们新建两个图层layer2和layer3,连上组件莫认的layere1,一共有三个独立的图层。   4.在图层layer2上,我们使用文本工具在编辑区中画两个大小适中的文本框,如图9所示: 图9   5. 在properties面板中分别设置这两个文本框为dynamic text类型,即动态文本框,左边的文本框我们用来显示得分,右边的文本框我们用来显示剩余的生命,所以分别在properties面板中设置它们的变量名var为score和lives,如图10和图11所示: 图10 图11   6.然后将图层layer2延续到第22帧。   7.在图层layer3上输入文本GET READY,作为游戏开始的提示信息,并将此帧延续到第18帧,如图12所示: 图12   8.在图层layer3的第19,20,21三帧分别插入三个空白关键帧,然后在第22帧插入关键帧,从图库中将前面做好的重玩按钮放到编辑区中,如图13所示: 图13   9.并给重玩按钮添加as:   on (release) {     Score = 0;     Lives = 5;     gotoAndPlay(1);   }   //初始化游戏得分和生命值,并且跳到第一帧重新开始游戏   10.回到图层layer1,在第1帧,第20帧和第21帧插入三个关键帧,给第1帧添加如下as:   xStep = Number(random(5)) 6;   yStep = Number(random(5)) 3;   //设置两个随机变量,其中xStep的范围是6-11,yStep的范围是3-8,random(N)这个随//机函数会产生一个从0到N的随机数   xModifier = random(10);   yModifier = random(10);   //设置两也随机变量,范围都是从0到10   if (Number(xModifier)>5) {     xStep = xStep-(xStep*2);   }   if (Number(yModifier)>5) {     yStep = yStep-(yStep*2);   }   //根据xModifier和yModifier这两个随机树取值的不同,对xStep和ystep两变量值//进行修改   if (Number(lives) == 0) {     gotoAndStop(22);   }   //如果lives值等于0,即生命值为0,则游戏结束,跳到第22帧也就是游戏结束画面   11. 第20帧添加如下as   horX = getProperty("/mousetrack", _x);   setProperty("/hor", _x, eval("horX"));   //取得对象mousetrack的横坐标,并赋给水平挡板hor,这样就控制了水平挡板和鼠标//的横坐标始终相等,使它们保持在一条垂直线上   vertY = getProperty("/mousetrack", _y);   if (Number(vertY)<245) {     setProperty("/vert", _y, eval("vertY"));   } else {     setProperty("/vert", _y, 245);   }   //设置垂直挡板的位置,并且规定了挡板的最大纵坐标值为245   BallX = getProperty("/Ball", _x);   setProperty("/Ball", _x, Number(BallX) Number(int(xStep)));   BallY = getProperty("/Ball", _y);   setProperty("/Ball", _y, Number(BallY) Number(int(yStep)));   //设置弹力小球的坐标值,经过一系列计算后,产生了一个随机的坐标值   12. 第21帧添加如下as   Lose = 0;   LeftConstraint = getProperty("/hor", _x)-47;   RightConstraint = Number(LeftConstraint) 94;   UpperConstraint = getProperty("/vert", _y)-47;   LowerConstraint = Number(UpperConstraint) 94;   yAccel = vertY-getProperty("/mousetrack", _y);   xAccel = horX-getProperty("/mousetrack", _x);   //定义一系列变量,LeftConstraint,RightConstraint,UpperConstraint,LowerConstraint   //设置了小球所能活动的范围   if (Number(getProperty("/Ball", _y))>270 or
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表