这个单元陈老师想来讲解平常大家都看过玩过的打砖块游戏,这个游戏还算简单,但是你也可以设计的很复杂,例如,砖块变色,敲到后会掉下东西,不同的关卡…
首先先来决定会出现在游戏画面中的角色
球(ball)–球可以随时改颜色
砖块(brick)–不同颜色及不同分数的砖块
砖块反弹的平台(bar)–因为吃到不同的东西而会改变外形,如变长、变短……
游戏规则:
透过鼠标来改变Bar的位置,但必须控制其水平移动,也就y的值要固定。
按下鼠标来发射球
球在碰到墙就反弹
碰到砖块後砖块就隐藏并加分
全部的Brick就不见就过到第二关
也可限定时间及球数
吃到不颜色的砖块会掉下不同的东西,而这些东可以改变Bar的外形
……
备份好了吗?开始跟着陈老师一起来完成这个有趣的游戏
6-1-1 反弹板的程式
将反弹板的Y座标固定,X座标随滑鼠改变,这样就能让反弹板只能水平移动
6-1-2 设计球程式
如下图,一样是按下空白键时程式便开始执行,但我们在尚未发射球前,必须让求跟着反弹板移动,程式如下:
将球的X座标设定同反弹板的X座麽
将球的Y座标设定同反弹板的Y座麽,但必须加上一个值,因为反弹板有厚度(宽),球必须在其上,所以这个值要视你的反弹而定。
侦测是否按下鼠标,按下後,让球面向上(0)
旋转一个角度,可自由设定,一般是30-45度
让球一直移动,碰到边缘就反弹
6-1-3 当球碰到反弹板
当按下空白键后球便会被发射出去,但是碰到反弹反却没有反应,那是当然的,因为我们才刚要写这一部份,如下图:
使用「如果」来判断,当球碰到反弹板就改变方向
使用「180-方向」来处理
反弹后先移动10步,接着又会回到外层回圈,球便会一直移动
6-1-4 设计砖块程式
设定二个变数:分数及时间
设计步骤:
程式一开始先显示
重复判断是否被球打到
如果被球打到就隐藏,然后将分数加一分
将程式码复制到每一个砖块
6-1-5 时间设定
将这一部份的程式码设计在背景
将分数归零
时间设定为30秒
执行回圈30次,每一次将时间减一沙
最后结束程式
整个程式还有是否过关及判断未碰到反弹板的部份,请你先想一想,动手做看看,过几天站长再来讲解。