Files
lms ee1ff7f444 [docs][refactor]: 将旧 01~06 中文教程合并整理为 modules/frameworks 文件夹结构
- 删除 01~05 旧中文教程目录
- 将 03 核心功能教程拆分为各 framework 模块的子文档
- 06 工具脚本移入 modules/frameworks/编辑器工具/UI工具/
- 非框架内容合并进 rules/20-开发规则.md 与 rules/40-工作流清单.md
- 更新所有交叉链接与文档关联表

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-07 18:36:15 +08:00

94 lines
4.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PVE/关卡战斗
## 分类
- 项目功能
## 目的
记录 PVE 关卡进入、战斗流程、胜负结算、波次和奖励逻辑。
## 已知线索
- 逻辑路径:`Assets/Game/GameHFScripte/GameFunction/Logic/GameScenes/`
- 地图路径:`Assets/Game/GameHFScripte/GameFunction/Logic/MapManager/`
- 伤害路径:`Assets/Game/GameHFScripte/GameFunction/Logic/DamageManager/`
- 地图资源:`Assets/Game/GameHFResource/CN/Map/`
- 网络消息线索:`BattleLevelEnter``BattleLevelExit``BattleLevelWin``BattleLevelFail`
- 配置线索:`XLSX_SRC/CN/Wave.xlsx`
## 已确认内容
当前 PVE/关卡战斗处于“有核心框架和协议线索,但主流程接入不完整或待确认”的状态。
已确认的子系统:
- `HFWaveManager`:从 `HFFunCatalogue.NDB.ds_WaveD0D9AA20TableData.ReadTableList()` 读取波次配置。
- `WaveInfo`:根据 `WaveTime``WaveID``WaveHpInc``GateFirst` 生成波次信息。
- `CreateMonsterInfo`:解析 `start_end_delay_monsterId_count` 格式的发怪配置。
- `HFMapManager.CreateMap(levelid, finish)`:当前会先 `ClearMap()`,再通过 `HFFunCatalogue.Asset.LoadAsset(1501, ...)` 加载地图 prefab。
- `HFDamageManager`存在伤害计算、掉落、死亡事件、HUD 飘字逻辑,但大部分实现当前被注释。
- 网络协议和事件已生成:`BattleLevelEnter``BattleLevelExit``BattleLevelWin``BattleLevelFail`
`HFWaveManager` 当前有 Editor GUI 调试入口:
```text
OnRunGUI
-> 按钮“游戏开始”
-> InitCampWaveInfo(Red/Blue)
-> TryCreateMonster
```
`OnRunFixedUpdate` 每秒尝试发怪:
```text
OnRunFixedUpdate
-> TryCreateMonster
-> CampWaveInfo.TryCreateMonster
-> WaveInfo.TryCreateMonster
-> CreateMonsterInfo.TryCreateMonster
```
## 梳理任务
- [ ] 找到 PVE 入口:从主界面、地图或 GM 进入关卡的调用点。
- [ ] 梳理关卡状态:进入、战斗中、胜利、失败、退出。
- [x] 梳理波次配置和怪物/实体生成关系。
- [x] 梳理伤害计算和实体框架之间的关系。
- [ ] 梳理结算奖励如何进入背包和奖励展示。
- [x] 梳理 PVE 相关网络消息和事件。
## 待确认
- 是否有明确的 PVE manager。
- 战斗是纯本地模拟、服务器校验,还是服务器主导。
- `GameScenes``MapManager``LineManager` 在 PVE 中的边界。
- `HFMapManager.CreateMap``levelid` 当前未用于读表,资源 id 固定为 `1501`,是否临时逻辑待确认。
- `HFWaveManager` 是否只通过 Editor GUI 调试启动,还是存在运行时入口待确认。
- `HFDamageManager` 大量逻辑被注释,当前战斗伤害是否启用待确认。
## 相关框架
- [实体框架](../../../modules/frameworks/实体系统/README.md)
- [场景框架](../../../modules/frameworks/场景系统.md)
- [网络框架](../../../modules/frameworks/网络系统.md)
- [事件框架](../../../modules/frameworks/事件系统/README.md)
- [数据/配置框架](../../../modules/frameworks/数据配置框架.md)
---
## 文档关联
> 当本文档发生变更时,应同步检查以下关联文档,避免信息不一致。
| 文档 | 关联原因 |
|---|---|
| [modules/模块索引.md](../../../modules/模块索引.md) | 模块索引是项目知识总入口 |
| [modules/frameworks/数据配置框架.md](../../../modules/frameworks/数据配置框架.md) | 数据/配置框架 |
| [modules/frameworks/实体系统/README.md](../../../modules/frameworks/实体系统/README.md) | 实体框架 |
| [modules/frameworks/事件系统/README.md](../../../modules/frameworks/事件系统/README.md) | 事件框架 |
| [modules/frameworks/网络系统.md](../../../modules/frameworks/网络系统.md) | 网络框架 |
| [modules/frameworks/场景系统.md](../../../modules/frameworks/场景系统.md) | 场景框架 |
| [rules/10-架构说明.md](../../../rules/10-架构说明.md) | 架构说明定义总体分层和依赖方向 |
| [rules/30-模块登记规则.md](../../../rules/30-模块登记规则.md) | 模块登记规则定义分类和状态口径 |
| TODO补充依赖的框架/模块文档 | 如 UI、网络、事件、配置等框架 |