Flash游戏制作:弹力球
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-14
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 Number(getProperty("/Ball", _y))<30) { if ((Number(getProperty("/Ball",_x))>Number(LeftConstraint)) and (Number(getProperty("/Ball", _x)){ xStep = int(xStep-(0.15*xAccel)); Score = Number(Score)+50; } else { Lose = 1; } } //此段程序判断小球是否碰到了水平挡板上,如果碰到了,则分数加50,然后设置小//球的反弹坐标,否则,标志位lose记为1,说明碰到了墙壁 if (Number(getProperty("/Ball", _x))>270 or Number(getProperty("/Ball", _x))<30) { if ((Number(getProperty("/Ball",_y))>Number(UpperConstraint)) and (Number(getProperty("/Ball", _y)){ |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash MX 轻松制作旋转啮合齿轮下一篇: Flash游戏制作:找错误
关于Flash游戏制作:弹力球的所有评论