首页 >> 大全

【scratch】class_3_打砖块小游戏

2023-06-24 大全 51 作者:考证青年

一、游戏说明

实现一个打砖块的小游戏,基本元素包括小球,挡板,砖块,终点线,分数,背景自选。

二、需求分析 1. 小球 2. 挡板 3. 砖块 4. 分数 5. 终点线 三、设计说明 1. 小球 2. 挡板 3. 砖块 4. 分数 5. 终点线 四、代码实现 第一步,选择适当背景;选择‘Ball’作为角色,可以给它改名为‘球’;游戏开始时将小球放在屏幕中间,大小调成50,面向40°方向,重复向前移动,碰到边缘反弹。

至此实现了小球的基本运动,效果如图

第二步,选择‘挡板’为角色,放在坐标(0,-140)处,循环,把它的横坐标设置为鼠标的横坐标,这样它就会在水平方向上随着鼠标移动。

效果如图

第三步,当小球碰到挡板时,要使小球反弹,且遵循反射定律,先看反射的示意图

反过来也是一样的

所以小球撞到挡板后反射需要转过的角度=180° - 方向x2,在小球的代码中添加内容

效果图

第四步,添加砖块(难点) 首先添加一个长方体的模型当做砖块,把它放在屏幕左上角的位置并适当调整大小。

我们计划排列30个砖块,排成3行,每行10个;由于我们不会去添加30个砖块角色,虽然也能实现,但是非常繁琐。所以我们要用到‘克隆’来实现这个功能,将一个砖块克隆30次就可以了。

执行后会发现没有变化,是因为克隆是在“原地”执行的,也就是说克隆出来的30个砖块都叠加在一起了。所以我们要想办法把它们分开,当然不能手动拖拽。

我们需要建立两个变量,‘砖块数量’和‘砖块编号’。砖块数量用来记录画面内砖块的数量,适用于所有角色;砖块编号表示每个克隆出来的砖块的编号,仅适用于当前角色。

注意:克隆功能神奇的地方在于,当克隆体被启动时,它就自动拥有了被克隆对象的所有代码;如果建立的变量‘仅适用于当前角色’,那它被克隆体使用时,也将仅适用于此克隆体,而对其它克隆体没影响。我们接下来会举例说明

为了查看每个砖块的编号是否准确,我们设置点击砖块时显示砖块编号,这样可以方便我们看到效果

可以看到砖块都被编号了。那如果砖块编号不是‘仅适用于当前角色’会怎么样呢?会变成这个样子:

可以看到每个砖块的编号都是30,这是因为我们把砖块编号变成了‘适用于所有角色’,然后把它设置为了砖块数量,而砖块最后的数量就是30。 也可以这样理解

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了