# 配置表联动关系查看器 一个用于查看 Unity 项目中配置表联动关系的编辑器工具,支持跨项目复用。 ## 功能特性 ### 1. 配置表列表 - 支持搜索过滤配置表 - 显示表是否存在于当前项目 - 支持 TXT 文件(如敏感词表) ### 2. 联动关系查看 - 查看当前表关联哪些其他表 - 显示字段联动关系详情 - 支持跳转到关联表 ### 3. 反向查询 - 查看哪些表引用了当前表 - 快速定位依赖关系 ### 4. 数据格式可视化 - 自动解析数据格式 - 显示格式示例和说明 - 支持多种格式:item_id_num, id_pos_lv, id_lv_num 等 ### 5. Excel 操作 - 一键打开配置表 Excel 文件 - 批量打开所有关联表 ### 6. 跨项目适配 - 自动检测项目中存在的配置表 - 支持不同项目配置不同路径 ## 安装指南 ### 方法一:复制文件 1. 复制 `ConfigLinkViewer` 文件夹到目标项目 2. 路径:`Assets/Editor/ConfigLinkViewer/` ### 方法二:Git 子模块 ```bash git submodule add Assets/Editor/ConfigLinkViewer ``` ## 使用说明 ### 打开工具 在 Unity 编辑器菜单中点击:`Tools → 配置表联动查看器` ### 设置 Excel 路径 1. 点击"选择文件夹"按钮 2. 选择包含配置表 Excel 文件的文件夹 3. 路径会自动保存 ### 基本操作 | 操作 | 说明 | |------|------| | 单击列表项 | 选中配置表,查看详情 | | 点击"打开表格" | 打开当前表的 Excel 文件 | | 点击"批量打开关联表" | 打开所有关联的配置表 | | 勾选"显示反向引用" | 查看哪些表引用了当前表 | ### 数据格式说明 | 格式 | 示例 | 说明 | |------|------|------| | item_id_num | 1001_10_5 | 类型:1001, ID:10, 数量:5 | | type_id_num | 1001_10_5 | 类型:1001, ID:10, 数量:5 | | id_pos_lv | 100_1_30 | ID:100, 位置:1, 等级:30 | | id_lv_num | 100_30_5 | ID:100, 等级:30, 数量:5 | | id_lv_num_time | 100_30_5_120 | ID:100, 等级:30, 数量:5, 时间:120秒 | | buffid_lv | 5_3 | BuffID:5, 等级:3 | | rune_id_num | 10_2 | 符文ID:10, 数量:2 | | equip_id_num | 20_1 | 装备ID:20, 数量:1 | ## 跨项目复用 ### 自动检测 工具会自动检测目标项目中的配置表: - 检查 `Resources/Resources_moved/config/` 目录 - 检查 `Resources/config/` 目录 - TXT 文件检查 Excel 文件夹 ### 添加新配置表 编辑 `ConfigLinkDatabase.cs`,在 `GetAllTableInfo()` 方法中添加新表: ```csharp new ConfigTableInfo { tableName = "new_table", displayName = "新表", description = "新表描述", relations = new List { new FieldRelation { fieldName = "field1", targetTable = "target_table", targetField = "id", description = "关联说明" } } } ``` ## 文件结构 ``` Assets/Editor/ConfigLinkViewer/ ├── ConfigLinkDatabase.cs # 配置表数据和联动关系存储 ├── ConfigLinkViewerWindow.cs # Unity编辑器窗口界面 └── README.md # 使用文档 ``` ## 支持的配置表 工具包含以下类型的配置表支持: - 活动系统:activity, activityreward - 成就系统:achievement - 战斗系统:fight_fb1~4, fight_arena, fight_sample - 英雄系统:hero, herolevel, herostage - 道具系统:prop, mall - 装备系统:equip, equiplevel, equipstage - 技能系统:skill, skilllevel - 符文系统:rune, runelevel - 任务系统:quest - VIP系统:vip, recharge - 服务端文件:dirty_words.txt, 奖励格式说明.txt ## 注意事项 1. Excel 文件命名必须与配置表名一致(如 `enemy.xlsx`) 2. 路径设置后会自动保存到 PlayerPrefs 3. 建议将 Excel 文件夹设置为版本控制忽略 4. TXT 文件需要放置在 Excel 文件夹中 ## 更新日志 ### v1.0.0 - 初始版本 - 支持配置表列表和联动关系查看 ### v1.1.0 - 添加反向查询功能 - 添加数据格式可视化 - 添加批量打开关联表功能 ### v1.2.0 - 支持 TXT 文件识别 - 优化跨项目适配 - 更新使用文档 ### v1.3.0 - 移除所有水平滚动条 - 左右面板自适应布局 - Excel文件夹路径与搜索框对齐 - 文本保持单行显示不换行 - 窗口默认大小优化为 900×600 ## 许可证 MIT License