当前位置:首页 > 空调维修 > 文章正文

用代码块编程制作一款火星直升机电子游戏

编辑:[db:作者] 时间:2024-08-25 03:02:11

在本期“学习太空”节目中,你将制作一个电子游戏,让玩家乘坐直升飞机探索火星,就像和NASA的“毅力”号漫游车一起前往火星的“机警”号直升机一样!
可以在SpaceDaily会员专区不雅观看视频教程。

用代码块编程制作一款火星直升机电子游戏

请参阅下面的材料和步骤解释。
更多类似的视频教程和活动,请访问“学习太空”( Learning Space)。

材料
- 有网络连接的打算机
- 免费Scratch账号(https://scratch.mit.edu/)
https://www.jpl.nasa.gov/edu/images/activities/scratchhelicopter_backdrops.zip)
https://www.jpl.nasa.gov/edu/images/activities/scratchhelicopter_sprite.png,点击鼠标右键选择“另存为”)
https://www.jpl.nasa.gov/edu/images/activities/scratch_fetchrover_sampletube_sprite.png,点击鼠标右键选择“另存为”)

1. 设置

下载火星表面图像、火星直升机角色图片和火星样品管角色图片,并将它们保存到电脑中。
将火星表面图像压缩文件解压缩到一个新文件夹中。
每个文件都有jpg和png版本。

在Scratch网站上,点击“创建”(Create)开始一个新项目。
(如果你想保存你的作品,以便将来重新访问或重新设计你的游戏,请登录或创建一个账户。

创建一个新背景:将鼠标移至右下角“舞台”(Stage)窗口中的“选择一个背景”(Choose a Backdrop)图标上,然后选择“上传背景”(Upload Backdrop)。
不才载好的火星表面图像中选择你想要的图。
现在,屏幕上的“舞台”区域该当显示你选择的背景图片。
示例图片如下:

创建一个新的角色:将鼠标移至“角色”(Sprites)窗口中的“选择一个角色”(Choose a sprite)上,然后选择“上传角色”(Upload Sprite)。
选择下载好的直升机角色图片。
现在,你的背景图片上该当会涌现一架直升机,同时还有默认的小猫角色。
示例图片如下:

在“角色”窗口中点击现有的小猫角色,然后点击右上角的“”,把它删掉。

选择直升机角色后,你就可以创建管理游戏和掌握直升机的代码了!

2. 让直升机飞起来

NASA的火星直升机是一项技能演示,旨在证明小型、轻质直升机可以在火星稀薄的大气层中翱翔。
火星上的直升机不能用操纵杆或键盘掌握,但在将来,去到火星轨道上或火星表面的宇航员可以利用遥控器驾驶直升机。
你的游戏可以用键盘上的按键让直升机飞起来。

任务

利用键盘上的“高下旁边”四个按键使直升机在屏幕向高下旁边翱翔。
提示:查看“掌握”(Control)部分的图块是否有帮助,示例图片如下:

指定每次按下在代码模块上定义的一个键时,直升机将移动多远。
在选择详细数字时,必要考虑按下按键触发指令时直升机的移动是否平稳。
提示:查看“运动”(Motion)部分的模块是否有帮助,示例图片如下:

让直升机无论朝哪个方向翱翔,都能保持旋翼在顶部的方向。

附加任务:创建一个脚本,利用角色“造型”(Costumes)让直升机看起来会旋转。

3. 添加起飞位置

“毅力”号火星探测器在火星上着陆后,会将火星直升机放置在火星表面的第一个起飞位置。
你可以通过创建脚本,在游戏开始时将直升机放置在特定位置,从而为直升机指定起飞的位置。

任务

创建代码,在游戏开始时将直升机置于特定位置。
确保直升机从地面而不是天空起飞。

附加任务:修正着陆代码,使直升机在地面随机位置启动。

4. 添加着陆点

与地球上的直升机一样,火星直升机也须要着陆。

任务

在背景图片上创建一个可见的着陆目标。
你可以利用背景编辑器绘制着陆点,也可以添加一个角色作为着陆目标。
避免将着陆目标放在大石头上,以免着陆时破坏直升机。
虽然真实的火星直升机在翱翔时不会有标记的着陆点,但你的游戏玩家必要知道在哪里着陆。

附加任务:创建代码,将一片未被标记的区域确定为安全着陆区,让游戏玩家必须通过考试测验在不同区域着陆来找到这片区域。
记住,你必要将这些未被标记的区域设在没有大石头的地方。

5. 添加火星样本采集管

在火星表面,“毅力”号火星探测器正在存放装满岩石样本的样本管,在未来的任务中,类似“机警”号的火星直升机可以将这些样本管网络起来,然后用小型火箭送回地球。
你可以通过添加必要网络的火星样本网络管来给游戏玩家支配任务。

任务

在游戏中添加两个或更多样本网络管角色。

创建代码,让直升机到达样本管时,样本管会显示已被网络。

6. 添加倒计时器

限定翱翔韶光的一个主要成分,便是直升机电池中的电量。
你可以创建一个计时器,作为游戏结束的倒计时,也便是直升机翱翔结束的韶光。
倒计时不能设置得太短或太长,要让游戏玩家在有可能取得胜利的条件下也能感想熏染到游戏的寻衅性。
如果你改变了直升机的速率或着陆地点,可能也必要相应地调度倒计时时长。

任务

创建一个计时器,从设定的韶光开始倒计时直到零分零秒。
提示:创建一个可以编程变动的韶光变量。
示例图片如下:

当计时器到零时,让游戏停滞。

当计时器到零时,显示“任务结束”的笔墨提示。

当游戏玩家点击绿色小旗重新开始游戏时,让计时看重新开始倒计时。

附加任务:创建代码,让直升机无论处在何处,都能在计时器归零时降落到火星表面。

7. 增加评分系统

火星任务没有计分系统,但网络到的科学信息实际上具有很高的代价,有些创造可能比其他创造更令人愉快、更有趣或者更主要。
为了确定玩家在游戏中的表现如何,你可以制订一个计分系统,包括网络样本管所得到的分数。
你可以决定如何打算总分,也可以对游戏进行编程,在某些情形低落低玩家的总分。

任务

创建代码,建立一个计分系统。

每网络一个样本管就增加一分或几分。

8. 解释任务成功!

火星直升机是一项技能演示任务,它将帮助NASA证明直升机可以在火星上翱翔,而这是亘古未有的。
当火星直升机在火星上进行首次受控翱翔时,任务就成功了。

任务

创建代码,一旦直升机在着陆点安全着陆,就宣告任务成功。

在着陆时停滞游戏。

创建一个脚本,在任务成功时停滞运行任务。

参考来源:
[1]https://www.jpl.nasa.gov/edu/learn/project/code-a-mars-helicopter-video-game/
[2]https://www.jpl.nasa.gov/edu/learning-space

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除,如需转载请保留原文地址:http://www.baanla.com/ktwx/91014.html

XML地图 | 自定链接

Copyright 2005-20203 www.baidu.com 版权所有 | 琼ICP备2023011765号-4 | 统计代码

声明:本站所有内容均只可用于学习参考,信息与图片素材来源于互联网,如内容侵权与违规,请与本站联系,将在三个工作日内处理,联系邮箱:123456789@qq.com