跳到主要内容
← 全部概念
操作手感 / 17

命中停顿

命中瞬间,让攻防双方短暂停住

交互演示

交互演示 · 移动指针或点击画面,观察变化

命中停顿会在攻击命中时,让攻击者和目标暂停 50 至 100 毫秒。没有停顿,刀刃会在 2 至 3 帧内划过目标,接触瞬间很难看清。下方的挥击暂停了 120 毫秒,比通常略长,方便你看清时间轴上的停顿区间;火花则仍在运动。

适用场景

在接触瞬间让相关角色短暂停住,使命中更容易被看清。继续采集输入,并明确决定停顿期间粒子、镜头运动和界面是否继续运行。

实现示例

不依赖特定引擎的伪代码。请根据你使用的引擎调整函数和坐标约定。

onHit(damage):
  hitStopRemaining = durationFor(damage)
update(dt):
  readAndBufferInput()
  if hitStopRemaining > 0:
    hitStopRemaining -= dt
  else:
    updateFighters(dt)

常见错误

修改全局时间缩放可能让菜单、网络逻辑,甚至用于结束命中停顿的计时器一并冻结。应使用不受时间缩放影响的时钟推进停顿计时器,并避免因同一次持续重叠而反复延长停顿。

内容原作 Nicolas Zullo · 中文整理与交互改编