3. 射击和生命
系列
你正在阅读 太空射手教程 的 第3部分。
- 太空射手,第1部分
- 太空射手,第2部分
- 太空射手,第3部分
- 太空射手,第4部分
- 太空射手,第5部分
- 太空射手,第6部分
- 太空射手,第7部分
- 太空射手,第8部分
- 太空射手,第9部分
- 太空射手,第10部分
- 太空射手,第11部分
- 太空射手,第12部分
- 太空射手,第13部分
提示
在本章中,我们将学习如何在游戏中使用 Behaviours(行为)。您可以阅读 Behaviors(行为) 页面以了解更多信息。行为可以为对象增加额外的功能。所有对象都可以附加一个或多个行为。
安装生命和射击行为
选择玩家对象旁边的三个点,然后单击 编辑对象。接着,单击 Behaviors(行为) 选项卡。
单击 Add a new behavior to the object,然后选择 Search new behaviors 选项卡。现在您可以在搜索栏中键入 "Health" 来找到我们的行为。选择 Health(生命) 行为并安装它。通过这样做,我们以后可以在不再次下载的情况下使用此行为。
重复相同的步骤来安装 Fire Bullets(发射子弹) 行为。
为玩家添加生命和射击能力
在玩家的编辑视图中,单击 Add a new behavior to the object,然后搜索**"fire"** 在 Installed Behaviors(已安装行为) 中。然后选择 Fire Bullets(发射子弹)。现在我们就能够使用操作来发射子弹了。
将冷却时间设置为 0.3。
重复相同的流程为玩家添加 Health(生命) 能力。将 Maximum health(最大生命值) 从100更改为 0,因为我们不希望限制玩家的最大生命值。
提示
在接下来的章节中,我们将添加一些提升玩家生命值的道具。
从玩家飞船射击子弹
首先,我们需要添加一个子弹对象。按照上一节的步骤,添加一个精灵对象。使用名称 Bullet(子弹),并为对象添加 "laser_player.png" 图像。
我们将为 Bullet(子弹) 对象添加一个新行为,称为 Destroy when outside of the screen(在屏幕外时销毁),因为我们希望删除屏幕外的对象。
提示
Destroy when outside of the screen(在屏幕外时销毁) 行为允许我们通过删除屏幕外的对象来防止超出摄像头范围射击。
向 Bullet(子弹) 对象添加 Destroy when outside of the screen(在屏幕外时销毁) 行为。
您可以在玩家对象下看到新的 Bullet(子弹) 对象。
然后,打开 Events(事件) 页面。添加一个新事件。单击 add a condition(添加条件) 并键入 "key" 来检查是否按下了 Space 键。
现在,我们将添加射击动作。在同一事件中单击添加操作,然后选择 Player(玩家)。然后,在顶部,您可以看到来自我们行为的新操作。选择 Fire a bullet(发射子弹) 并填写要求如下:
Player.X()
是一个表达式,将被替换为玩家 X 轴上的位置。我们将 50 添加到将子弹定位在对象的右侧。Y 轴同样适用。其他参数表示我们将创建一个 Bullet(子弹) 对象并赋予它一些速度。角度为0度,意味着子弹将向右移动。
使玩家变小一点
玩家飞船有点太大了。我们可以在场景编辑器中调整它的大小,但是为了本教程,我们将使用事件。点击 Add a new action(添加新操作) 来更改玩家的比例。然后,选择 Player(玩家) 和 Scale(比例)。将值填写为 0.6。
警告
请确保修改符号是 (设置为)。
你可以在页面中添加一个**"Player"**注释来分隔行动。你的事件页面应该看起来像这样:
测试我们的射击能力
保存并运行游戏。尝试按下Space键看看你如何射击。
提示
我们将在创建敌人之后添加一些生命值行动。
下一步
在下一章中,我们将添加一个背景并使相机移动:Space Shooter, Part 4