Files
2026-06-09 23:11:08 +08:00

767 B

Input

职责

输入模块负责把 PC、SDL 手柄和 Switch 输入统一成游戏语义。

主要源码:

  • game/src/core/input_state.*
  • game/docs/controls.md

当前语义

InputState 只暴露游戏需要的动作:

  • moveX:水平输入,范围 -1.01.0
  • jumpPressed:跳跃按下瞬间。
  • attackPressed:攻击按下瞬间。

当前映射

详细按键见 ../controls.md

原则:

  • 角色逻辑只消费 InputState
  • PC/Switch 差异只存在于 InputStateProvider
  • 跳跃和攻击使用“按下瞬间”,避免长按每帧触发。

下一步

  • 增加 InputConfig,并通过 Asset 或 PVF 读取。
  • 分离 gameplay 输入和 debug 输入。
  • 增加输入状态 debug 显示。