Flash游戏制作:打砖块
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-14
三个难度按钮分别拖到主背景的中间位置,由上自下分别为beginner, intermediate和Addvanced。 给beginner按钮添加AS: on (release) { speed = 8; balls = 5; play(); } 给intermediate按钮添加AS: on (release) { balls = 4; speed = 10; play(); } 给Addvanced按钮添加AS: on (release) { speed = 12; balls = 3; play(); } 最后主场景如图17所示: 图17 6.最后一步就需要在主场景中添加游戏控制代码了,新建一个图层命名为action,在此图层第1 帧添加as: setProperty("/paddle", _visible, true); setProperty("/ball", _visible, true); score = 0; stop(); //刚开始设置小球和挡板为可见,并且设置初始得分为0,然后影片停止在第一帧,//等待玩家选择游戏难度。 在此图层第2 帧添加as: startDrag("/paddle", false, 240, 420, 560, 420); //对挡板进行拖动 ballx = 300; bally = 400; speedx = 8; speedy = -8; ballwidth = 16; paddlewidth = 80; brickwidth = 40; Level_index = 10; bricknumber = 0; Level_i = 1; modified = true; endgame = false; border = 250; //定义并初始化一系列变量,将在后面的代码中用到这些变量 在此图层第3帧添加as: if (endgame) { gotoAndPlay(5); } //变量endgame标识游戏是否结束,如果游戏结束,则跳转到第5帧 if (Number(bricknumber)<=0) { Level_i = Level_index-9; call(Level_index); //设置游戏等级,也就是等级文本框中的内容,将调用自定义函数level_index. setProperty("/brick", _visible, false); setProperty("/brickblue", _visible, false); setProperty("/brickgreen", _visible, false); setProperty("/brickred", _visible, false); //设置工作区中的方砖不可见 ballx = 300; bally = 400; speedx = Number(speed)+Number(xspeed)-5; speedy = -speed-xspeed; } //设置小球位置和运动速度,ballx和bally代表小球坐标,speedx和speedy代//表小球横向和纵向的移动速度。 ballx = Number(ballx)+Number(speedx); bally = Number(bally)+Number(speedy); //根据小球移动速度改变小球坐标 if (Number(bally)<=Number(border)) { b = int(ballwidth/2); c1 = int((ballx-200)/40); r1 = int((bally-b-40)/20); c2 = int((ballx-b-200)/40); r2 = int((bally-40)/20); c3 = int((ballx-200)/40); r3 = int((Number(bally)+Number(b)-40)/20); c4 = int((Number(ballx)+Number(b)-200)/40); r4 = int((bally-40)/20); i = 1; while (Number(i)<=4) { r = eval ( "r" add i ); c = eval ( "c" add i ); IsVisible = getProperty ("brick" add r add c,_currentframe); if (Number(IsVisible) == 1) { bricknumber = bricknumber-1; score = Number(score)+100; destroy = r add c; tellTarget ("brick" add destroy) { gotoAndPlay(2); } if ((Number(i) == 2) or (Number(i) == 4)) { speedx = -speedx; ballx = Number(ballx)+Number(speedx); i = 5; } else { |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 轻松实现Flash动态背景下一篇: Flash游戏制作挑战:方块游戏
关于Flash游戏制作:打砖块的所有评论