在本课程中,您将学习 ACTION GAME MAKER 中的基础脚本技术。
在 第 3 部分 中,我们将创建一个剑攻击。
开始之前
我们将继续使用本教程系列 第 1 部分 和 第 2 部分 中的项目。
请在继续之前打开该项目并做好准备。
在本课程中,您将学习 ACTION GAME MAKER 中的基础脚本技术。
在 第 3 部分 中,我们将创建一个剑攻击。
我们将继续使用本教程系列 第 1 部分 和 第 2 部分 中的项目。
请在继续之前打开该项目并做好准备。
Object_Sampleplayer。W005 Gun 旁的 templates > objects > weapons > P_other 下可以找到多把剑的图像。B_Weapon 的子对象添加。这里我们使用 W_001_sword.png。AnimationPlayer 检查动画。播放 033_Swing。如果感觉不对,请微调 W001Sword 的属性。AttackArea,但目前位于玩家的脚下。将 AttackArea2D 移动为 B_Weapon 的子对象。AttackArea2D 的位置以匹配剑。一个合适的设置可能是 x: 13,y: -11,Rotation: -42。AttackCollision 的大小和位置。由于位置和旋转角度可能不正确,请将它们都重置为 0。此外,默认的判定框看起来有点短,让我们将其形状拉得更长一些。注意:调整形状可能会自动更改 x 坐标。Swing 动画。此时判定框应随剑一起移动。精灵角色的攻击判定框
对于使用精灵图(sprite sheets)创建的角色,建议根据动画调整攻击判定框的大小和位置。
在 Inspector(检查器)中,展开 CollisionShape2D 的 Shape 属性。
您可以设置关键帧,将形状大小和位置的变化作为攻击动作的一部分进行动画处理。
Sword 的新状态,并将动画设置为 Swing。Enemy 组中的对象。Idle 连接到 Sword,并将条件设置为当按下 Y 键时触发(键盘上为 V 键)。Idle 到 Sword 的连接,按 Ctrl+C 或右键选择复制。Move,然后按 Ctrl+V 或右键选择粘贴链接,将其连接到 Sword。这样可以在移动时进行剑攻击。Sword 返回 Idle 的快捷链接,并将条件设置为当动画结束时。现在,近战剑攻击应该可以正常工作了。测试一下——如果设置正确,按下 Y 键(键盘上为 V 键)应能让玩家用剑挥砍并击败僵尸。
不过,你可能会注意到一些问题:
在下一步中,我们将解决这些问题。
Idle 状态并添加三个动作。W005Gun 节点的 Visible 属性。W001Sword 节点的 Visible 属性。AttackCollision 节点的 Disabled 属性。Sword 状态中,反转设置。W001Sword 的 Visible 属性。AttackCollision 的 Disabled 属性。Shoot 状态中,添加一个动作:W005Gun 的 Visible 属性。在本课程中,我们使用 ChangeObjectProperty 动作 来切换精灵的可见性。
不过,您也可以通过动画来控制 Visible 或 Disabled 等属性,将它们设置为关键帧。
但请注意:
如果动画在到达关键帧之前被中断,更改可能无法正确生效。
例如,某些动画如 026_Crouch 就使用此技术通过动画多边形切换面部表情。
有关 AnimationPlayer 的更多信息,请参阅图形课程。
下一课程:第 4 部分