### 简介
在本文中,我们想学会制作一个扎气球的Scratch游戏。
玩法:通过点击气球,将气球扎破。
![](https://www.codxz.com/media/upload/2024062909263658.png)
### 能学到的知识
在这个Scratch项目中, 我们可以学到以下知识:
- 如何使用动画让精灵移动
- 如何使用随机数
- 如何绘制精灵
- 如何创建精灵的克隆
### 项目制作
#### 1、制作一个动画气球
使用Scratch软件新建一个项目,删除猫精灵,添加一个气球精灵和一个背景,如下所示:
![](https://www.codxz.com/media/upload/2024062909334113.png)
在这个项目中,气球选用的是“Balloon1”
![](https://www.codxz.com/media/upload/2024062909341246.png)
背景选用的是“Wall 1”
![](https://www.codxz.com/media/upload/2024062909344423.png)
现在为我们的气球添加代码,让它在屏幕上弹来弹去:
![](https://www.codxz.com/media/upload/2024062909371261.png)
测试我们的气球,它移动得太慢了吗?如果你想让它速度快一些,可以修改代码中的数字。
你是否也注意到你的气球在屏幕上移动时会翻转?
![](https://www.codxz.com/media/upload/2024062909423787.png)
气球不应该这样移动!要修复这个问题,点击气球精灵图标,然后点击方向。
在"旋转方式"部分,点击"不旋转"来阻止气球旋转。
![](https://www.codxz.com/media/upload/2024062909440735.png)
重新测试,检查问题是否得到了修复。
#### 2、随机的气球
使用现在的代码,我们的气球总是会从同一个位置开始,并沿着相同的路径移动。
多次点击旗帜来启动程序,你会发现每次都是一样的。
与其每次都使用相同的x和y坐标,我们可以让Scratch选择一个随机数。
修改我们的气球代码,使它看起来像这样:
![](https://www.codxz.com/media/upload/2024062909475678.png)
如果多次点击绿色旗帜,我们应该会注意到气球每次都从不同的位置开始。
我们甚至可以使用随机数来每次选择一个随机的气球颜色:
![](https://www.codxz.com/media/upload/2024062909510036.png)
添加以下代码,将颜色特效随机增加一个数值
![](https://www.codxz.com/media/upload/2024062909515444.png)
如果把颜色特效修改代码放在永远循环里面,会有什么不同吗?
#### 3、扎破气球
让我们允许玩家扎破气球!
点击气球精灵,然后点击造型标签,我们可以删除所有其他造型,只留下1个气球造型。通过点击"绘制"来添加一个新造型,并创建一个名为"burst"的新造型。
![](https://www.codxz.com/media/upload/2024062911042408.png)
确保气球在游戏开始时切换到正确的造型。代码现在应该看起来像这样:
![](https://www.codxz.com/media/upload/2024062911061320.png)
允许玩家点击气球以后,气球爆裂,添加以下代码:
![](https://www.codxz.com/media/upload/2024062911091559.png)
测试项目,你能弹破气球吗?它的工作方式是否如我们所期望的那样?
我们需要改进这段代码,使得当气球被点击时,它会短暂显示爆炸造型,然后隐藏。
我们可以通过将气球的"当角色被点击时"代码改为以下内容来实现这一切:
![](https://www.codxz.com/media/upload/2024062911103345.png)
现在我们在点击气球时隐藏了它,我们还需要在"当旗帜被点击时"代码的开始处添加一个"显示"积木。
![](https://www.codxz.com/media/upload/2024062911121472.png)
再次尝试扎破一个气球,来检查它是否正常工作。
#### 4、添加分数
让我们通过记录分数来使游戏更有趣。
为了记录玩家的分数,我们需要一个地方来存放它。创建一个名为"score"的新变量。
当开始一个新游戏(通过点击旗帜)时,我们应该将玩家的分数设置为0。在气球的"当旗帜被点击时"代码的顶部添加这个代码:
![](https://www.codxz.com/media/upload/2024062911211423.png)
当气球被扎破时,我们要将分数加1
![](https://www.codxz.com/media/upload/2024062911220290.png)
再一次运行项目,点击气球时,分数变化了吗?
#### 5、更多气球
扎破1个气球还算不上是一个游戏,所以让我们添加更多的气球!
一个简单的方法是右键点击气球精灵然后选择复制。如果你只想要几个气球,这种方法还可以,但如果你需要20个?或者100个?你真的要点击复制那么多次吗?
一个更好的获得大量气球的方法是克隆气球精灵。
将你的"当旗帜被点击时"气球代码拖到一个新的"当作为克隆体启动时"控制积木中。
![](https://www.codxz.com/media/upload/2024062911251792.png)
然后在“当绿旗被点击时”积木下添加克隆的代码,首先要将自身隐藏,如下所示:
![](https://www.codxz.com/media/upload/2024062911254148.png)
我们还应该在气球点击脚本中用"删除此克隆体"积木替换"隐藏"积木。
![](https://www.codxz.com/media/upload/2024062911263398.png)
测试我们的项目!现在当点击旗帜时,主气球精灵将隐藏,然后克隆自己30次。当这30个克隆体每个都启动时,它们会像之前一样在屏幕上随机弹跳。看看你能否弹破这30个气球!
### 挑战1:添加时间
你可以通过只给玩家10秒的时间来尽可能多地弹破气球,使你的游戏变得更有趣。
> 你可以使用另一个变量来存储剩余的时间,当时间为0时,停止所有脚本。
### 挑战2:添加更多物体
你能在游戏中添加其他物品吗?你可以添加好的物品,比如甜甜圈,它们能给你很多分数,或者坏的物品,比如蝙蝠,它们会减少你的分数。
![](https://www.codxz.com/media/upload/2024062911313823.png)