反弹回力球
游戏规则:玩家移动弹板,使小球不断撞击顶部。小球的起点在舞台的上方,然后以随机角度向下移动,碰到舞台的边缘就会反弹。玩家使用鼠标水平移动反弹板, 并将小球重新弹回去。如果小球碰到了舞台底部,游戏就结束。下面分四个步骤逐步构建这个程序。首先建立新的项目(选择 菜单文件 新建项目),然后删除猫咪角色(用鼠标右键单击角色列表中的猫咪缩略图,在菜单中选择删除)。
第一步:准备背景
怎样才能检测到小球从反弹板边落下呢?我们可以在舞台的底部做一个标记,然后使用碰到颜色?积木(侦测模块)检测小球是否碰到了标记的颜色。当前的背景是白色的,因此,我们可以在底部设置一条很细的带有颜色的矩形区域。
具体如何做呢?首先单击舞台的缩略图,然后切换到背景标签页中。按照图1的步骤在舞台背景的底部绘制一个矩形即可。
第二步:加入反弹板和小球
我们先来添加反弹板角色。单击角色列表中的绘制新角色按钮, 绘制一个反弹板。因为反弹板是一个很细很短的矩形, 因此绘制方法基本等同于图1-19的步骤。给反弹板填充一个你喜欢的颜色,然后设置其旋转中心点大致为矩形的中心。接下来给反弹板角色起一个有实际意义的名字,这里命名为Paddle,再拖动到y坐标等于-120的位置。
现在来添加小球角色。单击角色列表中的从角色库中选取角色 按钮,在素材库中选择物品分类,选择图像Tennis Ball添加到当前 项目中,修改角色名为Ball。
第三步:让角色动起来
作为游戏的设计者,应当考虑玩家如何开始游戏。例如,是按 一下按钮开始,单击舞台上某个角色开始,还是当你挥手时开始(如果有摄像头)。通常情况下,启动程序时习惯使用舞台上方的小绿旗, 本游戏也釆用这种方式。
如何从绿旗启动程序呢?很简单,当单击绿旗时,任何脚本都能由当绿旗被点击积木触发启动。然后小绿旗就会变亮,直到所有的脚本执行完毕。
给角色Paddle添加图2的脚本,当绿旗被点击时。初始化设置可以让它还原到初始的位置,因为你之前可能移动过这个角色。Paddle应当悬停在舞台底部粉色区域的上方。 如果你的反弹板太厚,厚到和底部粉色有重叠部分,则可以适当修改坐标的数值,使其悬停在粉色上方。
接下来讲解Ball的脚本图3
首先,我们把小球移动到舞台的顶部❶,并使用在…到…间随 机选一个数❷(数字与逻辑运算模块)使其面向随机角度。随后脚本使用重复执行❸移动小球不断穿梭在舞台,若到边缘则反弹❸。单击绿旗测试脚本,小球应当在舞台内来回反弹,反弹板也应当跟随鼠标水平移动。
当小球和反弹板接触时,执行图4程序。我们命令小球随机选取一个-30°到30°的方向。然后重复执行积木块会再次执行移动…步,这样小球就会向上方移动,形成反弹的效果。单击绿旗再次运行脚本,测试一 下小球能否从反弹板上弹起来,单击停止按钮即可停止脚本。还缺点儿什么呢?显然,当小球Ball碰到舞台底部粉色区域的那一刻,游戏就应当结束。在角色Ball中添加如图1-23的脚本,添 加到图1-22中如果…那么积木的上方或下方。碰到颜色…?在侦测模块中,停止积木在控制模块中。
单击碰到颜色…?的颜色方块后,鼠标光标会变成手指形状。 当手指移动时,积木后面的颜色块也随之变化。只要移动鼠标到舞台底部的粉色区域,积木中的颜色块也会变为粉色。停止全部积木正如其名,它会停止所有角色的所有脚本。角色Paddle和Ball也不 例外。
第四步:添加声音更有趣
显然,一个没有音效或背景音乐的游戏会非常无聊。所以让我们来添加一个音效吧:每次小球从反弹板上弹起时播放一个音效。
双击舞台上的小球,进入声音标签页,单击从声音库中选取声音按钮,添加一个声音到角色中,分类中选择效果类,选择pop音效, 最后单击确定按钮(最初添加Tennis Ball角色时,声音标签页中默认已经包含pop音效,这里主要是熟悉一下添加声音的方法)程序如图6。
好了反弹回力球游戏竣工了,总结一下用的模块。
网友评论