为平台游戏添加敌人
警告
此版本的教程已被弃用。请参考新的平台游戏教程。
让我们添加一个敌人,该敌人将在平台上左右移动。玩家可以通过跳跃在其顶部摧毁它。
创建并添加敌人对象到场景中
创建一个新的“精灵”对象。将图像slimeWalk1.png
和slimeWalk2.png
添加到第一个动画中,将此动画命名为Walk
。由于我们的敌人将不断移动,因此我们不需要空闲或任何其他动画。
通过单击“不循环”按钮将动画设置为循环,并将其动画速度设置为0.5
,使用时钟图标。
窗口应如下所示:
单击“应用”按钮确认更改。
接下来,将对象重命名为Slime
。向场景中添加一个粘液对象,确保它正好位于一个平台的顶部。
如果我们现在运行预览,它不会做太多事情。它只是安静地坐在平台的顶部并播放行走动画。让我们让它移动。
左右移动敌人
在本教程中,我们的粘液将左右移动。我们将通过使用不可见对象来实现这一点:当粘液触碰其中一个对象时,它将改变方向。
让我们添加两个将充当界限的对象。创建一个新的精灵对象,添加图像Left.png
。将此对象命名为left
。然后,创建一个对象,添加图像Right.png
。将此对象命名为right
。
最后,将名为left
的对象放置在平台的右侧,将名为right
的对象放置在平台的左侧。
它应该如下所示:
想法是,如果粘液与名为left
的对象碰撞,我们将设置其方向向左移动。如果它与名为right的对象发生碰撞,我们将设置其方向向右移动。
首先,我们将创建一个名为direction
的对象变量,默认值为“left”。我们将使用此变量来改变方向。在事件列表中,让史莱姆向左移动的事件中添加一个操作来水平翻转精灵。选择对象为'Slime',数值选择'否'(因为在向左移动时不希望翻转对象)。重复这个步骤,但是这次针对让史莱姆向右移动的事件。这次选择'是',因为在向右移动时希望翻转对象。
添加一个空事件,条件为检查玩家和史莱姆之间是否发生碰撞。添加一个操作来删除史莱姆。然后添加一个条件来检查玩家是否在下落。
添加另一个事件,条件为检查玩家和史莱姆之间是否发生碰撞。添加一个操作来删除玩家。再添加一个条件检查玩家是否在地面上。
添加一个事件,在场景开始时触发,将左边和右边的箭头对象隐藏。