SepComet
|
88641f17b0
|
S3-01 + S3-02
|
2026-03-09 17:50:49 +08:00 |
SepComet
|
793a87c171
|
补全 S1 测试
- 调整 CombatNode 正常结束与异常的变量语义,现在是 DidCombatWin 与 Exception
- 补充测试样例
- 完成 S1 目标
|
2026-03-08 21:10:03 +08:00 |
SepComet
|
1023239880
|
迁移测试文件,建立主程序集
|
2026-03-08 18:08:13 +08:00 |
SepComet
|
548bc77ba6
|
规范类命名
|
2026-03-08 17:00:21 +08:00 |
SepComet
|
47ed27bebb
|
补充事件参数 + 完善 UI 设计
- 事件节点在 EventNodeComponent.cs 的 StartEvent/EndEvent 会携带 runId/nodeId/nodeType/sequenceIndex
- 商店节点在 ShopNodeComponent.cs 也会带同一套字段
- 战斗节点通过 CombatNodeComponent.cs 把上下文传进 CombatScheduler,再由 CombatRunningPhaseState.cs 发 NodeEnterEventArgs、由 CombatSchedulerFlowCoordinator.cs 发 NodeCompleteEventArgs
- NodeCompleteEventArgs.cs 现在新增了 SequenceIndex
- 各种 UI 的覆盖问题
|
2026-03-08 11:51:00 +08:00 |
SepComet
|
5c6f9bf3a4
|
RunNode 接入游戏主流程
- NodeMapForm:节点地图
- NodeItem:节点入口
|
2026-03-08 11:27:51 +08:00 |
SepComet
|
5afcaafff7
|
实现单局 Run 模型的基础落地
- 核心改动在 RunModel.cs、RunStateFactory.cs 和 RunStateAdvanceService.cs。现在项目里有了 RunNodeType / RunNodeStatus / RunNodeSeed / RunNodeState / RunState,并支持用预置节点序列创建 Run,以及在节点完成后推进、更新局内库存快照、标记通关或失败。
- 库存边界也补上了。PlayerInventoryComponent.cs 新增了 ReplaceInventorySnapshot(...),底层通过 PlayerInventoryStateStore.cs 重建工作副本,避免后续把 Run 真值硬塞回 PlayerInventory 内部状态。
- 节点事件载体已经扩展为可承载 Run 上下文,同时保留原来的无参 Create() 以兼容现有调用点。相关改动在 NodeEnterEventArgs.cs 和 NodeCompleteEventArgs.cs。
- 我还补了纯模型编辑器测试,覆盖 Run 创建、节点推进、失败标记和事件快照克隆,文件在 RunStateTests.cs。
|
2026-03-07 21:45:13 +08:00 |
basil
|
703fd6f540
|
Refine combat settlement exit flow
|
2026-03-07 20:09:50 +08:00 |
SepComet
|
3ad7d04b47
|
MapData + Event 解耦已完成一轮收口
- `MapData` 已收口为纯初始化快照,不再承载 coin 写接口委托
- 已新增 `MapEntityLoadContext`
- 用于把 `MapData` 快照与 coin 命令通道拆开传给地图加载
- `CombatLoadingState` 现在会组装:
- `MapData`
- `MapEntityLoadContext`
- `CombatLoadSession` / `EntityExtension.ShowMap(...)` 已切到 `MapEntityLoadContext`
- `MapEntity` 当前通过:
- `MapEntityLoadContext` 获取初始快照与 coin 命令通道
- `CombatCoinChangedEventArgs` 同步后续 coin 变化
- 已新增 `MapCombatRuntimeBridge`
- 收口地图侧 coin 当前值、命令调用与事件订阅
- `MapEntity` 不再自己维护 `_currentCoin` 和 coin 事件订阅样板
|
2026-03-07 20:00:39 +08:00 |
SepComet
|
b38088c3ea
|
refactor 7:
- 拆分 CombatScheduler,将公用方法与字段拆分为:
- FlowCoordinator
- RuntimeContext
- 地图侧现在收口为“MapData 初始快照 + CombatCoinChangedEventArgs 同步 + 独立命令桥接”
|
2026-03-07 19:42:17 +08:00 |
SepComet
|
01750e1b83
|
Archive
|
2026-03-07 11:57:44 +08:00 |
SepComet
|
34446ae42a
|
Update CombatNodeArchitecture.md
|
2026-03-06 21:02:40 +08:00 |
SepComet
|
1e5803f4c5
|
补全防御塔组装与介绍描述功能
- RepoForm.CombineArea:防御塔组装,直接继承所有组件的属性
- ItemDescUtility:根据属性构建不同的 ItemDescForm 的文本
|
2026-03-04 18:17:10 +08:00 |
SepComet
|
e12d2e73b2
|
补全 UI 设计
- `ItemDescForm` 道具详细信息面板,目前还未添加 DescText 内容的赋值
- `RepoForm` 道具入槽逻辑调整,为了适应 `ItemDescForm` 的点击打开逻辑,点击道具自动匹配槽位改成拖动道具到相应槽位
- 添加了一系列图片素材
|
2026-03-04 12:47:20 +08:00 |
SepComet
|
daba9cbdf9
|
仓库组件 + 防御塔升级
- `PlayerInventoryComponent`:玩家库存组件,收集金币/组件/防御塔等道具
- 补全防御塔的升级逻辑,最高 5 级
|
2026-03-02 19:50:12 +08:00 |
SepComet
|
5ba94828a8
|
补全 `CombatNode` 逻辑 + 重构 `EnemyManager`
- 添加了关卡内的难度系数与掉落
- 难度系数:每循环一轮波次敌人血量翻倍
- 道具掉落:按照掉落概率曲线根据波次计算当前爆率,并从新增的道具池里选择道具
- `CombatResourceManager`:统一维护关卡内资源状态(硬币/金币/道具掉落)
- 重构 `EnemyManager`:
- `EnemyManager`:编排子服务,不承载具体业务细节
- `EnemySpawnDirector`:管理刷怪时序
- `SpawnerResolver`:管理出生点与路径
- `EnemyLifecycleTracker`:追踪敌人生命周期
- `EnemyConfigService`:管理敌人配置与倍率
|
2026-03-02 17:23:34 +08:00 |
SepComet
|
5c7501d4fb
|
拆分 MapEntity 职责
- TowerSelectionPresenter:选中态 + 攻击范围展示
- CombatSelectInputService:点击事件逻辑(位置计算、点击对象识别、组装 CombatSelectFormUserData)
- TowerPlacementService:建造/升级/销毁与塔映射管理
- MapTopologyService:维护地图拓扑结构与寻路缓存
|
2026-03-02 11:04:33 +08:00 |
SepComet
|
564817d752
|
CombatNode 相关逻辑补充
- CombatFinishForm:战斗节点的结算页面(杀死的敌人、获得的金币、获得的道具)
- CombatSelectForm:战斗节点建造防御塔的选择 UI 以及对防御塔进行操作的 UI(只实现了建造逻辑,在 MapEntity 里做射线检测)
- 构建了基本的防御塔三组件(ShooterMuzzleComp/BasicBearingComp/BasicBaseComp)和防御塔主控(DefenseTowerController)以及相应的实体类(DefenseTowerEntity)
|
2026-03-01 23:11:52 +08:00 |
SepComet
|
26dc1a5600
|
- 调整优化了 CombatNodeComponent 相关实体的生命周期管理
- 总结了一份 CombatNodeComponent 文档 CombatNodeArchitecture.md
|
2026-02-28 20:20:02 +08:00 |
SepComet
|
dfd37778b6
|
- 添加 MainForm
- 添加 ResolutionAdapterComponent 进行屏幕分辨率适配
|
2026-02-28 18:39:20 +08:00 |
SepComet
|
bb0a4edfb7
|
P0-01:冻结 MVP 范围
docs/MVP-Scope.md
|
2026-02-26 13:56:30 +08:00 |
SepComet
|
4daefa17d5
|
init
|
2026-02-26 13:21:43 +08:00 |