手册:无敌

ACTION GAME MAKER 包含一个 无敌 功能。本节将解释其用途以及如何配置。


为什么需要无敌?

在 ACTION GAME MAKER 中,攻击命中检测和伤害处理速度极快
如果你不配置无敌状态,一次攻击可能会 瞬间命中多次,导致生命值(HP)瞬间归零。


如何设置无敌时间

建议将无敌持续时间设置得比攻击的激活时间更长

例如:

  • 如果攻击碰撞箱持续 1 秒,无敌时间应 至少为 1 秒
  • 否则,对象可能会 被同一攻击命中多次

无敌设置节点

1. 基础设置

基础的无敌配置:

  • 无敌持续时间(以秒为单位)
  • 无敌期间对象是否闪烁,以及闪烁间隔

这是一种快速应用通用无敌行为的方法。


2. 无敌设置节点(InvincibleSettings)

对于更 高级的自定义,请使用 InvincibleSettings 节点。

其功能包括:

  • 在无敌期间应用 过滤器或视觉效果,除了闪烁之外
  • 在无敌结束后添加 不同的闪烁效果(例如:无敌期间慢闪,结束后快速闪烁)
  • 临时将 碰撞箱转换为攻击箱
  • 在无敌开始时 播放音效
  • 使用开关控制无敌,实现复杂的条件逻辑

例如:

通常情况下,受到伤害会获得 0.3 秒的无敌时间。
但如果伤害类型造成击倒,你可以启用 1 秒的无敌时间。


无敌 vs. 禁用 HitCollision

另一种替代方案是使用 ChangeObjectProperty 动作或 AnimationPlayer 禁用 HitCollision 节点

  • 这同样可以防止受到伤害。
  • 但由于这种方法 依赖于时间,存在处理问题或延迟行为的风险。

:light_bulb: 建议
即使只是短暂的无敌,也推荐使用无敌功能以获得更一致的结果。
不过,创造性地结合两种方法,可以构建出 更动态的“伤害免疫”系统,从而带来有趣的玩法机制。