Commit Graph

6 Commits

Author SHA1 Message Date
SepComet c576224991 CombatNodeComponent 战斗节点功能补全
- 失败逻辑补全:添加基地血量,当血量归0时强制结束关卡
- `CombatInfoForm` 刷新逻辑补全:通过订阅 `CombatCoinChanged/Process/BaseHpChangedEventArgs` 来更新 UI,同时可以避免一点小变动刷新整个 UI
- `CombatSelectForm` 逻辑优化:订阅 `CombatCoinChanged` 来实时更新当前 Coin 是否满足操作条件
2026-03-02 12:06:36 +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 92cca14503 refactor & fix
- 将 `CombatScheduler` 的职责分散到 3 个类中
    - `PhaseLoopRuntime`:负责关卡各波次的调度
    - `CombatLoadSession`:负责地图与 UI 等资源的加载
    - `CombatEventBridge`:负责相关事件的处理
- 统一了战斗的命名为 `Combat`
- 调整了各个地图的坐标,使其位于摄像头中心
- 新增了 CombatInfoForm 展示战斗内的信息
- 补充了循环执行 LevelPhase,手动结束战斗的逻辑
2026-03-01 13:15:53 +08:00
SepComet 26dc1a5600 - 调整优化了 CombatNodeComponent 相关实体的生命周期管理
- 总结了一份 CombatNodeComponent 文档 CombatNodeArchitecture.md
2026-02-28 20:20:02 +08:00
SepComet dd9cedef5f 添加 CombatNodeComponent 及相关类
- CombatNodeComponent:节点组件,负责提取并开始关卡
- CombatScheduler:关卡调度器,负责关卡的生命周期调度
- MapEntity:地图实体,提供地图相关的数据
- Spawner:出生点,负责标记地图上的敌人出生点坐标
- House:基地,负责标记地图上的敌人目标点坐标
2026-02-28 15:44:22 +08:00