admin 管理员组

文章数量: 887021


2024年1月18日发(作者:生日静态网页模板)

上周的宇宙大战射击游戏中,我们只完成了宇宙飞船发射子弹的部分。还未制作敌对方。这周制作了敌方-飞龙,飞龙随机在屏幕上方出现,如果被子弹打中,则得分,飞龙和子弹都消失。

敌方:飞龙;计分。

目的

目的:制作射击游戏的敌方-吐火的飞龙。当子弹碰到飞龙时,飞龙被消灭,同时增加分数。

实现方式

克隆依然是重要的操作。 每一只飞龙出现时,都需要先克隆一份,然后设定一定的随机方向,从屏幕上方往下移动。为了让飞龙有飞的感觉,我们切换飞龙的造型。飞龙在普通造型和吐火的造型中来回切换。

如果碰到子弹(闪电),则删除飞龙的克隆体。系统设置了一个全局变量,记录分数,飞龙被打中后,分数增加10.

为了让其他角色能够接受到打中的命令、播放声音,还需要使用广播消息。对方接收到广播消息后,采取一定的动作。

宇宙飞船移动,打中加分。

子弹:克隆,发射前移到飞船上。

制作步骤

第一步:飞龙。

1. 加入飞龙角色

2. 设置开始事件

3. 直接重复执行,无限循环

4. 每一次循环都克隆一个飞龙,因此循环里面可以增加等待2秒。如果等待时间过短,飞龙就会很多,难度就会增加。如果克隆体过多,会导致系统性能变慢。

5. 从屏幕上方往下方飞行,因此Y直接固定为180,即顶部。然后X位置在-240和240中随机选择一个数字。

6. 然后随机设定一个方向,135到255方向。

7. 然后即可以重复执行,每次移动3步。移动的步数越大,飞龙就飞得越快。

8. 判断:根据X和Y轴数值判断,如果飞龙飞出屏幕,则删除飞龙克隆体。

9. 判断:如果碰到子弹,则删除克隆体,同时广播“打中了”。

10. 如果碰到宇宙飞船,则删除克隆体,同时广播“游戏结束”

11. 一个循环以后,可以切换一次造型。这样飞龙就有飞舞的感觉了。

飞龙:克隆,碰到子弹就消失,出屏幕后也消失。

第二步:分值计算

12. 需要增加一个全局变量。放在宇宙飞船上。当收到“打中了”的消息时,该变量增加10.

后续改进

13. 后来,我们增加了一个球,即每次宇宙飞船会发出一个球和一个闪电,在球的发射中,改变造型,飞行过程中,球的颜色就不断变化。但似乎克隆体太多了,系统速度变慢,不够顺畅了。

14. 可以在游戏结束以后,更换背景,显示游戏结束的场景,播放游戏结束的声音。

相关知识

今天在白板上介绍了用到的一些控件。通过举例,理解每个控件的意义。

1. 角色:飞龙、飞船、闪电等

2. 舞台:这个有点复杂,要介绍清楚X轴和Y轴。最终提问,例如如果飞龙要往右移动,X和Y如何变化。往右上角、右下角、左上角、左下角等。

第一次结束Scratch时,联系了碰到边缘以后返回到原点,即设置X或Y的初始值。然后不停循环。

3. 运动:

a. 移动到X,Y;

b. 设定方向??度;0度朝上,90度朝右,180度,朝下,-90度,朝左。和时钟类似。

c. 移动到??对象上,例如子弹发射时,移动到宇宙飞船上。第二次的接球游戏中,我们让一块板跟随鼠标左右移动,用到了移动到鼠标的操作。

d. 将X坐标增加??,正为右移,负为左移

e. 将Y坐标增加??,正为上移,负为下移。

4. 外观

a. 显示

b. 隐藏

c. 将角色大小设定为??

5. 控制

a. 重复执行:无限制,一直执行

b. 重复执行??次,做完指定次数以后,就结束循环了。

c. 如果…那么…:我们举了好些例子,一个角色从左到有移动,到右边X》230,就不让继续移动,直接将X设定为-230,就能回到起点。

d. 如果…那么…, 否则

e. 克隆(自己、其他角色):克隆是非常重要的,就是复制一份出来,每一份都可以单独操作。

f. 克隆体启动时,例如往下飞行,往上飞行。

g. 当克隆体碰到边缘或其他角色时,可以删除本克隆体,广播消息。


本文标签: 移动 子弹 游戏 结束 增加