1.0 KiB
1.0 KiB
Combat
职责
战斗模块负责攻击、命中、受击、伤害、击退和状态互斥。当前只做了最小预留,还未进入正式玩法实现。
主要源码:
game/src/combat/hitbox.hgame/src/actor/player_actor.*
当前状态
已有:
- 玩家攻击输入。
- punch 动画状态。
- 攻击音效 cue。
hitbox.h预留。
未完成:
- 攻击 hitbox。
- hurtbox。
- 命中检测。
- 伤害数值。
- 受击硬直。
- 击退。
- 血量。
- 怪物受击和死亡。
后续拆分建议
优先保持轻量,不急着做复杂战斗框架:
HitboxComponent:攻击框、受击框。CombatStats:血量、伤害、防御等固定数值。CombatResolver:命中判定和伤害结算。HitReaction:硬直、击退、受伤状态。
接入顺序
- 从玩家 punch 状态产生一帧或多帧 hitbox。
- DebugOverlay 显示 hitbox/hurtbox。
- 新增一个最小
EnemyActor。 - 完成玩家攻击命中敌人的闭环。
- 再接 battle zone 清场。