为孩子们准备的Scratch科技项目:遥控直升机

由 小石头编程 发表于 2024年07月05日
### 简介 在这个Scratch项目中, 我们将学会如何开发科技玩具,包括无人机! ![](https://www.codxz.com/media/upload/2024070510005465.png) - 点击蝴蝶结使其旋转 - 点击太阳镜使其改变颜色 - 点击笔记本电脑启动直升机 - 使用方向键操控直升机飞行 - 按空格键使直升机完成空中翻滚 ### 可以学到的知识 在这个项目中,我们可以学到以下知识: - 如何制作精灵动画 - 如何响应键盘输入 - 理解广播机制的工作原理 ### 资源准备 在本项目中,用到了一些资源,下面是直升机的图片 ![](https://www.codxz.com/media/upload/2024070510143894.png) ![](https://www.codxz.com/media/upload/2024070510143888.png) 背景图: ![](https://www.codxz.com/media/upload/2024070510150708.png) 太阳镜: ![](https://www.codxz.com/media/upload/2024070510164260.png) 蝴蝶结: ![](https://www.codxz.com/media/upload/2024070510152898.png) 无线发夹: ![](https://www.codxz.com/media/upload/2024070510162625.png) ### 项目制作 #### 1、旋转蝴蝶结 首先我们新建一个Scratch项目,然后添加角色,搭建成下面的形式: ![](https://www.codxz.com/media/upload/2024070510184160.png) 部分角色用的是Scratch内置的角色,其中女角色用的是“Alex”,男角色用的是“Devin”,笔记本是“Laptop”,石头是“Rocks”。 我们将蝴蝶结角色命名为“Bow Tie”,点击蝴蝶结,添加以下代码 ![](https://www.codxz.com/media/upload/2024070510242731.png) 点击蝴蝶结来运行代码。你应该会看到蝴蝶结顺时针旋转15度,重复10次,总共旋转150度。 ![](https://www.codxz.com/media/upload/2024070511065339.png) 找到![](https://www.codxz.com/media/upload/2024070511073945.png) 积木,不要拖动它,直接点击它来将蝴蝶结设置回初始位置。 > 提示:在Scratch中,你可以直接点击一个积木来立即运行它。你甚至不需要先把它拖到脚本区域! 为了让蝴蝶结完成一整圈旋转,代码中的数字需要加起来等于360度。修改我们的代码,使蝴蝶结每次旋转36度,重复10次(36 x 10 = 360)。 ![](https://www.codxz.com/media/upload/2024070511090165.png) 再次测试代码,这一次,蝴蝶结应该完成一个完整的360度旋转,并最终回到起始位置。 如果想让蝴蝶结完成4个完整的旋转,我们可以将重复积木中的数字从10改为40。 ![](https://www.codxz.com/media/upload/2024070511102912.png) #### 2、挑战:变色太阳镜 你能使用以下积木来让太阳镜在点击时改变颜色吗? ![](https://www.codxz.com/media/upload/2024070511123126.png) 记住,你可以改变代码积木中的数字! #### 3、启动你的直升机 让我们编写代码,使直升机在点击笔记本电脑时启动。 让我们从在点击笔记本电脑时广播一个启动消息开始。我们需要创建一个名为"start"的新消息。 ![](https://www.codxz.com/media/upload/2024070511151442.png) 这段代码向所有其他精灵广播一条消息。如果我们测试这段代码,会发现目前还没有任何反应!这是因为我们还没有编写直升机对这条消息做出响应的代码。 点击直升机精灵,并添加一个"**当接收到**"积木,任何连接到这个积木的代码都会在收到来自笔记本电脑的"start"消息时运行。 ![](https://www.codxz.com/media/upload/2024070511200146.png) 如果点击直升机的"造型"选项卡,我们会注意到它有两个造型,它们的螺旋桨略有不同。 ![](https://www.codxz.com/media/upload/2024070511205064.png) 我们可以使用这两个造型来为直升机制作动画。添加下面这段代码,使直升机在收到"start"消息后永远循环切换造型 ![](https://www.codxz.com/media/upload/2024070511215809.png) 通过点击笔记本电脑精灵来测试我们的代码。直升机螺旋桨是否开始动画了? #### 4、驾驶你的直升机 让我们使用方向键来驾驶你的直升机。 让我们先编写代码,使直升机在按下向上箭头键时向上移动。 ![](https://www.codxz.com/media/upload/2024070511241093.png) 测试代码,我们会看到每当按下向上箭头键时,直升机的y坐标(上/下位置)都会改变。 为了让直升机移动得更平滑,我们可以在直升机的"重复执行"循环内添加向上移动的代码。 ![](https://www.codxz.com/media/upload/2024070511250726.png) 我们也可以编写代码,使直升机在按下左箭头键时向左移动,这次我们需要将直升机的x坐标改变-2。 ![](https://www.codxz.com/media/upload/2024070511261496.png) 然后我们添加向下按键和向右按键的代码,最终代码如下: ![](https://www.codxz.com/media/upload/2024070511270392.png) #### 5、空中翻滚 让我们来编写代码,使直升机做360度旋转。 我们希望直升机在每次按下空格键时做一个360度的旋转。记住,代码中的数字加起来需要等于360。 ![](https://www.codxz.com/media/upload/2024070511283080.png) 通过按空格键来测试代码,你会看到直升机旋转得非常慢。这是因为它只是旋转1度重复360次。 为了加快直升机的旋转速度,改变你代码中的数字,使它每次旋转更多度数,但重复次数更少。只要这些数字加起来等于360,选择什么数字都可以! ![](https://www.codxz.com/media/upload/2024070511291576.png) 如果我们想让直升机在旋转的同时也移动,只需在代码中添加一个移动积木。 ![](https://www.codxz.com/media/upload/2024070511300167.png) 再次按空格键来测试代码,你应该会看到直升机在画圈移动。 ### 挑战:创建自己的科技玩具 1、你可以让天线在被点击时移动吗? ![](https://www.codxz.com/media/upload/2024070511315636.png) 2、你可以制作任何你喜欢的科技玩具,这里有一些其他你可以使用的精灵: ![](https://www.codxz.com/media/upload/2024070511323078.png)