Update TODO.md:

This commit is contained in:
Basil 2026-05-10 15:41:29 +08:00
parent 24c8efe03d
commit 63f9ead583
1 changed files with 33 additions and 28 deletions

61
TODO.md
View File

@ -1,28 +1,33 @@
# GeometryTD 三层拆分迁移 TODO # GeometryTD 三层拆分迁移 TODO
最后更新2026-04-30 最后更新2026-05-09
> **2026-04-30 第一波完成**Definition/Enum + Event > **2026-04-30 第一波完成**Definition/Enum + Event
> **2026-04-30 第二波完成**Vector3/Mathf 替换AttackPayload/HitContext 迁移 > **2026-04-30 第二波完成**Vector3/Mathf 替换AttackPayload/HitContext 迁移
> **2026-05-01 第三波完成**IDataRow 实现、TagRow/RarityTagBudgetRow、TagGenerationRuleRegistry 重构 > **2026-05-01 第三波完成**IDataRow 实现、TagRow/RarityTagBudgetRow、TagGenerationRuleRegistry 重构
> **2026-05-09 状态校准**:同步仓库实况,补记已落地的 DataStruct / UI/Base / Entity / BinaryReaderExtension并修正 TagRuntimeUtility 路径与各小节计数
## 概述 ## 概述
| 指标 | 数量 | 状态 | | 指标 | 数量 | 状态 |
|------|------|------| |------|------|------|
| 总文件数 | 457 | - | | 总文件数 | 457 | - |
| L0 (Domain) 可直接迁移 | ~180 | **第一波 62 个 + 第二波 5 个 + 第三波 6 个** | | L0 (Domain) 可直接迁移 | ~180 | **当前已落地 100+ 项(以本文件勾选和波次记录为准)** |
| L1 (Infrastructure) 需重构 | ~80 | - | | L1 (Infrastructure) 需重构 | ~80 | **项目已建,承接内容仍少** |
| L2 (Presentation) Unity 依赖 | ~197 | - | | L2 (Presentation) Unity 依赖 | ~197 | **项目骨架已建UI 五层迁移待展开** |
## 项目骨架 ## 项目骨架
``` ```
src/ src/
├── GeometryTD.Domain/ # L0 - 纯净 C# ├── GeometryTD.Domain/ # L0 - 纯净 C#(当前迁移主战场)
│ └── DataTable/ # IDataRow 实现TagRow, RarityTagBudgetRow │ ├── DataTable/ # IDataRow 实现 + 纯 C# BinaryReaderExtension
├── GeometryTD.Infrastructure/ # L1 - Unity 胶水层(待实现) │ ├── Definition/
│ └── DataTable/ # DR* : DataRowBase 包装类 │ ├── Event/
│ └── UI/Base/ # IUIFormController / IUIUseCase / UIContext
├── GeometryTD.Infrastructure/ # L1 - Unity 胶水层(当前仅少量承接)
│ └── Entity/
├── GeometryTD.Presentation/ # L2 - 表现层项目骨架(待承接 UI 迁移)
└── Geometry-Tower-Defense-Base.sln └── Geometry-Tower-Defense-Base.sln
``` ```
@ -64,18 +69,18 @@ src/
> ⚠️ 注:原 TODO 统计 25 个 Enum 文件,实际源文件 23 个。第一波新增 4 个枚举从其他层迁移CombatSelectActionType(UI层)、RunNodeType/RunNodeStatus/RunNodeCompletionStatus(Procedure层) > ⚠️ 注:原 TODO 统计 25 个 Enum 文件,实际源文件 23 个。第一波新增 4 个枚举从其他层迁移CombatSelectActionType(UI层)、RunNodeType/RunNodeStatus/RunNodeCompletionStatus(Procedure层)
### Definition/DataStruct8 个文件) ### Definition/DataStruct10 个文件)
- [x] `Definition/DataStruct/AttackPayload.cs` ⚠️ **已迁移** - Vector3 → System.Numerics.Vector3 - [x] `Definition/DataStruct/AttackPayload.cs` ⚠️ **已迁移** - Vector3 → System.Numerics.Vector3
- [x] `Definition/DataStruct/HitContext.cs` ⚠️ **已迁移** - Vector3 → System.Numerics.Vector3TargetStatusRuntime 已恢复 - [x] `Definition/DataStruct/HitContext.cs` ⚠️ **已迁移** - Vector3 → System.Numerics.Vector3TargetStatusRuntime 已恢复
- [ ] `Definition/DataStruct/BackpackInventoryData.cs` - [ ] `Definition/DataStruct/BackpackInventoryData.cs`
- [ ] `Definition/DataStruct/BuildInfo.cs` - [x] `Definition/DataStruct/BuildInfo.cs`**已迁移** - 纯数据对象
- [ ] `Definition/DataStruct/EventItem.cs` - [ ] `Definition/DataStruct/EventItem.cs`
- [ ] `Definition/DataStruct/EventOption.cs` - [ ] `Definition/DataStruct/EventOption.cs`
- [ ] `Definition/DataStruct/ImpactData.cs` - [x] `Definition/DataStruct/ImpactData.cs`**已迁移** - 纯结构体
- [ ] `Definition/DataStruct/TowerCompItemData.cs` - [x] `Definition/DataStruct/TowerCompItemData.cs`**已迁移** - 背包组件实例模型
- [ ] `Definition/DataStruct/TowerStatsData.cs` - [ ] `Definition/DataStruct/TowerStatsData.cs`
- [ ] `Definition/DataStruct/VersionInfo.cs` - [x] `Definition/DataStruct/VersionInfo.cs`**已迁移** - 纯数据对象
### Definition/ 其他 ### Definition/ 其他
@ -126,14 +131,14 @@ src/
### UI/Base3 个文件) ### UI/Base3 个文件)
- [ ] `UI/Base/IUIFormController.cs` - [x] `UI/Base/IUIFormController.cs`**已迁移** - 纯接口
- [ ] `UI/Base/IUIUseCase.cs` - [x] `UI/Base/IUIUseCase.cs`**已迁移** - 纯接口
- [ ] `UI/Base/UIContext.cs` - [x] `UI/Base/UIContext.cs`**已迁移** - 纯上下文基类
### Definition/Tag37 个文件) ### Definition/Tag35 个文件)
- [x] `Definition/Tag/Aggregation/TagRuntimeData.cs` ⚠️ **已迁移** - 无 Unity 依赖 - [x] `Definition/Tag/Aggregation/TagRuntimeData.cs` ⚠️ **已迁移** - 无 Unity 依赖
- [x] `Definition/Tag/Aggregation/TagRuntimeUtility.cs` ⚠️ **已新建** - CloneTagRuntimes 方法 - [x] `Definition/DataStruct/TagRuntimeUtility.cs` ⚠️ **已新建** - CloneTagRuntimes 方法(实际落位已调整到 DataStruct
- [ ] `Definition/Tag/Aggregation/TowerTagAggregationService.cs` - [ ] `Definition/Tag/Aggregation/TowerTagAggregationService.cs`
- [x] `Definition/Tag/Combat/EnemyStatusTagRegistry.cs` ⚠️ **已迁移** - 简化版(含 FireTagEffect、IceTagEffect 注册) - [x] `Definition/Tag/Combat/EnemyStatusTagRegistry.cs` ⚠️ **已迁移** - 简化版(含 FireTagEffect、IceTagEffect 注册)
- [ ] `Definition/Tag/Combat/Handlers/AttackShapeTagEffectHandler.cs` - [ ] `Definition/Tag/Combat/Handlers/AttackShapeTagEffectHandler.cs`
@ -168,7 +173,7 @@ src/
- [x] `Definition/Tag/Metadata/TagDefinition.cs` ⚠️ **已迁移** - 无 Unity 依赖 - [x] `Definition/Tag/Metadata/TagDefinition.cs` ⚠️ **已迁移** - 无 Unity 依赖
- [x] `Definition/Tag/Metadata/TagDefinitionRegistry.cs` ⚠️ **已迁移** - 简化版(移除 DR* 依赖) - [x] `Definition/Tag/Metadata/TagDefinitionRegistry.cs` ⚠️ **已迁移** - 简化版(移除 DR* 依赖)
### Definition/Event6 个文件) ### Definition/Event11 个文件)
- [ ] `Definition/Event/EventEffect/AddGoldEffect.cs` - [ ] `Definition/Event/EventEffect/AddGoldEffect.cs`
- [ ] `Definition/Event/EventEffect/AddRandomCompsEffect.cs` - [ ] `Definition/Event/EventEffect/AddRandomCompsEffect.cs`
@ -182,7 +187,7 @@ src/
- [ ] `Definition/Event/EventRequirement/HasRelicRequirement.cs` - [ ] `Definition/Event/EventRequirement/HasRelicRequirement.cs`
- [ ] `Definition/Event/EventRequirement/TowerCountAtLeastRequirement.cs` - [ ] `Definition/Event/EventRequirement/TowerCountAtLeastRequirement.cs`
### Factory6 个文件) ### Factory5 个文件)
- [ ] `Factory/EventEffectFactory.cs` - [ ] `Factory/EventEffectFactory.cs`
- [ ] `Factory/EventRequirementFactory.cs` - [ ] `Factory/EventRequirementFactory.cs`
@ -190,7 +195,7 @@ src/
- [ ] `Factory/PhaseEndConditionFactory.cs` - [ ] `Factory/PhaseEndConditionFactory.cs`
- [ ] `Factory/RunStateFactory.cs` - [ ] `Factory/RunStateFactory.cs`
### Network12 个文件) ### Network11 个文件)
- [ ] `Network/CSPacketBase.cs` - [ ] `Network/CSPacketBase.cs`
- [ ] `Network/CSPacketHeader.cs` - [ ] `Network/CSPacketHeader.cs`
@ -303,7 +308,7 @@ src/
### Entity ### Entity
- [ ] `Entity/EntityLogic/EnemyTagStatusRuntime.cs` - [x] `Entity/EntityLogic/EnemyTagStatusRuntime.cs`**已迁移** - Domain 内已存在纯 C# 版本Infrastructure 仍保留过渡副本)
### Utility ### Utility
@ -340,7 +345,7 @@ src/
### 策略 3DataTable 保持 L1 ### 策略 3DataTable 保持 L1
所有 DR* 类继承 `UnityGameFramework.Runtime.DataRowBase`,留在 L1 多数 DR* 类继承 `UnityGameFramework.Runtime.DataRowBase`,留在 L1`BinaryReaderExtension` 当前已在 Domain 提供纯 C# 版本
- [ ] `DataTable/DREnemy.cs` - [ ] `DataTable/DREnemy.cs`
- [ ] `DataTable/DRLevel.cs` - [ ] `DataTable/DRLevel.cs`
@ -362,7 +367,7 @@ src/
- [ ] `DataTable/DRUIForm.cs` - [ ] `DataTable/DRUIForm.cs`
- [ ] `DataTable/DRUISound.cs` - [ ] `DataTable/DRUISound.cs`
- [ ] `DataTable/DataTableExtension.cs`(含 Vector3/Color 解析) - [ ] `DataTable/DataTableExtension.cs`(含 Vector3/Color 解析)
- [ ] `DataTable/BinaryReaderExtension.cs` - [x] `DataTable/BinaryReaderExtension.cs`**已迁移到 Domain** - 使用纯 C# `Color` / `Color32` / `Rect` struct 替代 Unity 类型
### 策略 4Tilemap 接口抽象 ### 策略 4Tilemap 接口抽象
@ -401,7 +406,7 @@ src/
- [ ] `Base/GameEntry.Builtin.cs` - [ ] `Base/GameEntry.Builtin.cs`
- [ ] `Base/GameEntry.Custom.cs` - [ ] `Base/GameEntry.Custom.cs`
### Components8 个文件) ### Components7 个文件)
- [ ] `Components/BasicBaseComp.cs` - [ ] `Components/BasicBaseComp.cs`
- [ ] `Components/BasicBearingComp.cs` - [ ] `Components/BasicBearingComp.cs`
@ -411,7 +416,7 @@ src/
- [ ] `Components/ShooterMuzzleComp.cs` - [ ] `Components/ShooterMuzzleComp.cs`
- [ ] `Components/TowerController.cs` - [ ] `Components/TowerController.cs`
### CustomComponent/*Component10 个文件) ### CustomComponent/*Component11 个文件)
- [ ] `CustomComponent/BuiltinDataComponent.cs` - [ ] `CustomComponent/BuiltinDataComponent.cs`
- [ ] `CustomComponent/CombatNode/CombatNodeComponent.cs` - [ ] `CustomComponent/CombatNode/CombatNodeComponent.cs`
@ -508,7 +513,7 @@ src/
- [ ] `UI/Templates/MenuScene/Controller/SelectRoleFormController.cs` - [ ] `UI/Templates/MenuScene/Controller/SelectRoleFormController.cs`
- [ ] `UI/Templates/MenuScene/Controller/StartMenuFormController.cs` - [ ] `UI/Templates/MenuScene/Controller/StartMenuFormController.cs`
### Procedure13 个文件) ### Procedure14 个文件)
- [ ] `Procedure/Base/ProcedureBase.cs` - [ ] `Procedure/Base/ProcedureBase.cs`
- [ ] `Procedure/Base/ProcedureChangeScene.cs` - [ ] `Procedure/Base/ProcedureChangeScene.cs`
@ -525,7 +530,7 @@ src/
- [ ] `Procedure/ProcedureMenu.cs` - [ ] `Procedure/ProcedureMenu.cs`
- [ ] `Procedure/ProcedureTest.cs` - [ ] `Procedure/ProcedureTest.cs`
### Scene5 个文件) ### Scene4 个文件)
- [ ] `Scene/HideByBoundary.cs` - [ ] `Scene/HideByBoundary.cs`
- [ ] `Scene/Map/House.cs` - [ ] `Scene/Map/House.cs`