如何制作平台游戏:玩家动画
警告
本教程版本已过时。请参考新平台教程。
本教程将向您解释如何添加不同的动画以及如何使用事件在玩家状态变化时更改动画。
点击这里阅读上一篇教程,如果您尚未阅读。
添加动画
目前,玩家始终显示相同的站立动画,但我们将通过事件更改这一点。
但首先,我们需要将适当的动画添加到玩家对象。
跳跃动画
打开玩家对象的编辑器,在属性
选项卡上确保您在上面,然后点击窗口底部的+
按钮添加动画。最后,点击新动画的带有+
标记的缩略图并选择p1_jump
作为要添加的图像:
动画可以被赋予名称。这是区分它们并在事件中使用它们的简便方法。只需点击“可选动画名称”并键入您想要的名称即可。
将“Idle”和“Jumping”作为我们两个动画的名称输入:
奔跑动画
我们还需要添加走路动画,以在角色在平台上行走时显示。像之前添加另一个动画,当添加图像时,选择5个图像p1walk03.png
,p1walk04.png
,...和p1_walk07.png
。您可以一次选择所有图像,或者根据需要逐个选择。最后将动画名称设置为Running
:
这些图像将被显示以创建动画。我们需要调整一些选项。首先,点击不要循环
将此选项切换到循环
。当达到结尾时,动画将重新开始。计时器显示每个图像之间的时间(秒):这是动画的速度。输入0.05而不是1,以便播放动画更快:
我们的对象现在已准备就绪,请点击右下角的“应用”。
使用事件更改动画
第一个事件:跳跃时播放动画
提示
请注意,本教程显示完整列表编辑器模式的屏幕截图,而不是对象特定(新)编辑器模式。点击这里查看每种编辑器模式的示例以及如何切换。
现在,我们需要根据玩家的行为更改对象显示的动画。我们将使用事件描述游戏规则以及对象如何进行动画处理,移动和响应玩家输入。这是一种可以很快学会并对所有人都适用的视觉编程。
通过单击名为新场景(事件)
的选项卡打开场景的事件编辑器。
目前,事件编辑器为空:
通过点击顶部工具栏中的添加事件按钮添加第一个事件。
事件由一系列条件列表(例如,检查碰撞是否发生,按键是否被按下,玩家生命是否低等)和在满足条件时发生的一系列动作组成。
目前事件为空:
在第一个事件中,我们将检查玩家是否在跳跃,并相应地更改其动画。首先点击添加条件
。
在新窗口中,您可以看到所有可用于制作游戏的条件。我们要检查具有平台角色行为的Player对象是否正在跳跃。打开名为平台行为
的类别,然后选择正在跳跃
。
窗口右侧显示需要配置条件的参数。在这里,我们要检查“Player”对象是否在跳跃,因此选择Player作为第一个参数(第二个自动填充):
条件准备就绪!点击右下角的确定
关闭窗口,然后在事件中看到添加的条件:
现在要添加动作以在角色跳跃时更改Player动画。点击添加动作
。
打开的窗口类似,但现在显示所有可用的动作:
我们将更改Player的动画,Player是一个Sprite对象。打开Sprite
类别,然后动画
,最后选择更改动画(按名称)
。
选择第一个参数为Player
对象,然后在第二个字段中写入"Jumping"
。注意,您必须加上双引号,因为在GDevelop操作或条件中,任何文本都可以使用公式生成,因此需要使用双引号告诉GDevelop这是文本:
当完成后,请点击右下角的“确定”按钮。第一个事件准备就绪!
让我们看一下结果
点击工具栏中的“播放”按钮以启动预览。当您跳跃时,看到玩家的动画会发生变化!
但是当玩家回到地面时,您会发现动画没有恢复到空闲动画。这只是因为我们从未告诉GDevelop这样做!让我们添加另一个事件来修复这个问题。
空闲和奔跑动画
添加一个新的空白事件。点击“添加条件”,这次选择“位于平面图行为”类别内的条件“在地面上”。请注意,您可以在顶部的搜索框中使用条件名称快速查找条件!
通过选择“Player”对象填充第一个参数:
点击“确定”以验证条件:
![图片](https://wiki.gdevel
事实上,这是一个很好的机会,让我们的角色显示不仅是空闲和跳跃,还有奔跑动画:
我们可以添加两个事件,每个事件都有两个条件和一个操作:
- 当玩家在地面上且非奔跑状态时,必须显示空闲动画。
- 当玩家在地面上且奔跑时,必须显示奔跑动画。
相反,我们可以使用“子事件”来只检查玩家在地面上的条件一次。
通过单击“添加条件”或“添加动作”附近的空白区域选择我们创建的事件:
然后,点击两次按钮添加子事件:
两个“子”事件被添加到被视为父事件的事件下。事件左侧添加了一些间距,它们之间有一条线来视觉确认它们是连接的:
现在,您可以在这些事件内添加条件!对于第一个事件,添加一个条件来检查玩家是否奔跑:
对于第二个事件,添加相同条件,但打开“反转条件”切换。这样,当玩家对象未移动时,事件的操作将被触发:
到目前为止,这是我们的事件:
几乎完成了,让我们通过为每个事件添加所需的操作来完成。使用第一个事件将字符的动画设置为“奔跑”,第二个事件将字符的动画设置为“空闲”。
您可以像之前设置跳跃动画一样添加这些操作。输入动画名称时不要忘记引号(“”)。
时间进行预览(并保存)
您可以启动游戏的预览,看到玩家动画在奔跑和跳跃时发生变化!
我们可以做一个小改进,即当玩家在下落时也将动画设置为跳跃(否则当玩家到达平台的末端时,奔跑动画仍在播放)。
下一步:让摄像头跟随玩家
目前,我们很难构建一个大型可以探索的关卡,因为玩家可以很快走出屏幕外!本教程的下一部分将展示如何让摄像头跟随玩家。这非常简单,一个事件就足够了!
➡️ 阅读**教程的下一部分在此处**!