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

123 lines
4.9 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.
# 塔/角色养成
## 分类
- 项目功能
## 目的
记录塔、角色或卡片的升级、升星、技能升级、展示和养成配置。
## 已知线索
- 逻辑路径:`Assets/Game/GameHFScripte/GameFunction/Logic/TowerLevelUpManager/`
- 逻辑路径:`Assets/Game/GameHFScripte/GameFunction/Logic/TowerSkillUpManager/`
- UI 路径:`Assets/Game/GameHFScripte/GameFunction/UIWindows/AvatarItem/`
- 配置线索:`XLSX_SRC/CN/EntityConfig.xlsx`
- 配置线索:`XLSX_SRC/CN/SkillGroup.xlsx``SkillReleaser.xlsx``SkillTrigger.xlsx``SkillUp.xlsx`
## 已确认内容
启动初始化:
```text
HFGameStart.InitManager()
-> HFTowerStarUpManager.Instance
-> HFTowerSkillUpManager.Instance
```
协议已生成:
- `GetPlayerTower = 4000`
- `TowerLevelFormation = 4001`
- `TowerLevelUpLv = 4002`
- route
- `game.player.getTower`
- `game.player.formationTower`
- `game.player.levelUpTower`
请求/响应字段:
```text
GetPlayerTowerC2S
-> 无主要字段
GetPlayerTowerS2C
-> Formation : repeated long
TowerLevelFormationC2S
-> Formation : repeated long
TowerLevelFormationS2C
-> Formation : repeated long
TowerLevelUpLvC2S
-> Id
TowerLevelUpLvS2C
-> Id
-> Formation : repeated long
```
STC 事件:
- `HFEvent_STC_GetPlayerTowerS2C`
- `HFEvent_STC_TowerLevelFormationS2C`
- `HFEvent_STC_TowerLevelUpLvS2C`
配置和实体侧线索:
- `Constants` 中有塔相关字段:`BossTowerCardNum``BossTowerGetNum``TowerRange``TowerRectangle``NewTowerInitLevel``TowerPutEffect*``LucySpinSameTower` 等。
- 实体侧会读取 `EntityConfig``Resource``SkillGroup``SkillReleaser``SkillTrigger` 等表来驱动塔实体、模型、AI、技能。
- 历史/生成代码里存在 `Tower``Towerlevel``StarUpgrade``CardWeight` 等表的读取痕迹,但当前 `ZYXlsxProjectSettings` 登记的 CN 表没有显式列出这些源表,需要确认是否是旧生成残留或表源未纳入当前列表。
当前接入状态:
- `HFTowerStarUpManager` 主体逻辑几乎全部注释,包括选择塔、显示升级 HUD、读取 `StarUpgrade`、修改实体属性等。
- `HFTowerSkillUpManager` 主体逻辑也处于注释状态,包括监听 `HFEvent_TowerSkillState` 并修改实体技能能力。
- `AvatarItem` 的资源路径 attribute 被注释,当前更像 MainWindow 内嵌组件;`SetAvatarFrame` 尚未实装。
- `CardItem` 有卡片 UI 基础绑定,但 `SetData` 为空。
- 未发现 `GetPlayerTowerC2S``TowerLevelFormationC2S``TowerLevelUpLvC2S` 在业务代码中的实际发送点。
当前判断:
- “塔/角色养成”协议、配置痕迹、实体战斗联动线索都存在。
- 客户端养成主流程当前未完整实装,或被注释保留。
- 运行中的塔更偏战斗实体/技能系统;大厅养成、编队、升级 UI 还需要进一步确认产品接入状态。
## 梳理任务
- [x] 确认“塔”“角色”“卡片”在代码和配置中的对应概念。
- [x] 梳理塔升级和技能升级的入口。
- [ ] 梳理升级消耗和背包资源关系。
- [x] 梳理 Avatar/Card UI 展示数据来源。
- [x] 梳理养成数据是否同步服务器。
## 待确认
- `TowerLevelUpManager` / `TowerSkillUpManager` 当前初始化但主体逻辑被注释,需确认是否计划恢复。
- 升级、升星、技能升级是否属于同一产品功能域,需要结合 UI/策划表确认。
- 升级消耗、卡片碎片、背包资源之间的真实关系待确认。
- 养成结果如何同步并影响 PVE 实体属性,需要确认服务端返回和客户端应用链路。
- `Tower``Towerlevel``StarUpgrade``CardWeight` 等表是否是旧表残留或当前缺失源表。
## 相关框架
- [实体框架](../../../modules/frameworks/实体系统/README.md)
- [背包](背包.md)
- [数据/配置框架](../../../modules/frameworks/数据配置框架.md)
- [UI 框架](../../../modules/frameworks/UI窗口系统/README.md)
---
## 文档关联
> 当本文档发生变更时,应同步检查以下关联文档,避免信息不一致。
| 文档 | 关联原因 |
|---|---|
| [modules/模块索引.md](../../../modules/模块索引.md) | 模块索引是项目知识总入口 |
| [modules/features/背包.md](背包.md) | 背包 |
| [modules/frameworks/数据配置框架.md](../../../modules/frameworks/数据配置框架.md) | 数据/配置框架 |
| [modules/frameworks/实体系统/README.md](../../../modules/frameworks/实体系统/README.md) | 实体框架 |
| [modules/frameworks/UI窗口系统/README.md](../../../modules/frameworks/UI窗口系统/README.md) | UI 框架 |
| [rules/10-架构说明.md](../../../rules/10-架构说明.md) | 架构说明定义总体分层和依赖方向 |
| [rules/30-模块登记规则.md](../../../rules/30-模块登记规则.md) | 模块登记规则定义分类和状态口径 |
| TODO补充依赖的框架/模块文档 | 如 UI、网络、事件、配置等框架 |