Split game module documentation

This commit is contained in:
2026-06-09 23:11:08 +08:00
parent d41f9d1096
commit 0257c8058e
15 changed files with 647 additions and 88 deletions
+48
View File
@@ -0,0 +1,48 @@
# Actor and Player
## 职责
Actor 模块负责游戏对象。当前已实现玩家,敌人、道具、投射物和特效后续按同样方式扩展。
主要源码:
- `game/src/actor/player_actor.*`
- `game/src/actor/player_animation_assets.*`
- `game/src/combat/hitbox.h`
## `PlayerActor`
当前能力:
- 左右移动。
- 跳跃。
- 普通攻击触发。
- idle/run/punch 三个临时状态。
- 朝向翻转。
- 基础平台碰撞。
- 跳跃/攻击音效 cue。
## 动画资源
玩家动画加载顺序:
```text
PVF .ani
-> NPK IMG
-> PNG spritesheet fallback
```
如果使用 PVF `.ani`,由引擎 `Animation` 播放;如果回退 PNG,当前仍保留少量手写帧切换。
## 当前限制
- 还没有完整 ACT 状态机。
- 攻击还没有命中判定。
- 受击、击退、血量、硬直未接入。
- PNG fallback 的帧数和帧时长仍在 C++ 中。
## 下一步
- 把 idle/move/jump/attack/hit/dead 做成互斥状态机。
-`Animation::GetCurrentFrameInfo()` 接入 attack box / damage box。
- 新增 `EnemyActor` 时复用 Actor、PlatformWorld 和动画资源加载链路。