Commit Graph

4 Commits

Author SHA1 Message Date
SepComet ccb4738b96 refactor 5:
- CombatSettlementFlowService.cs 负责结算上下文构建、基地血量奖励修正、奖励选择准备、奖励追加、结算背包提交、FinishForm 摘要准备。
- CombatSettlementContext.cs 变成独立共享上下文,不再作为 CombatScheduler 内部私有类。
- 状态链改成各司其职:
    - CombatSettlementState.cs 负责结束战斗现场并构建结算上下文。
    - CombatRewardSelectionState.cs 只负责进入奖励选择流程。
    - CombatFinishFormState.cs 只负责提交结算背包并打开 FinishForm。
- CombatScheduler.cs 删除了大块结算/奖励构建细节,保留状态切换、共享运行时和少量桥接回调。
2026-03-07 15:05:59 +08:00
SepComet e488a2ca0f refactor 4:
- CombatWaitingForPhaseEndState.cs 不再调用旧的 PhaseLoopRuntime.ShouldEndCurrentPhase(...),改为构造 PhaseEndConditionContext,再通过
PhaseEndConditionFactory.Create(currentPhase.EndType) 执行判定。
- PhaseLoopRuntime.cs 删除了旧的 phase 结束规则实现,现在只保留 phase 运行时数据管理,职责和架构文档一致。
- 为了让 BossDeadPhaseEndCondition 真正可用,我补了 boss 真值链路:
    - EnemyLifecycleTracker.cs 现在会跟踪存活 boss。
    - EnemyManager.cs 暴露 HasAliveBoss,并在 EntryType.Boss 刷怪时标记 boss 身份。
2026-03-07 14:45:42 +08:00
SepComet 1d7c5b80d9 refactor 1: 新增/重命名类定义
- 将资源服务类型从 CombatResourceManager 重命名为 CombatInRunResourceManager,并同步更新现有引用。
    - CombatScheduler.cs:28
    - CombatInRunResourceManager.cs:11
    - CombatFinishFormState.cs:22
- 新增掉落解析骨架:
    - EnemyDropResolveContext.cs:6
    - EnemyDropResolveResult.cs:3
    - EnemyDropResolver.cs:7
- 新增 phase end condition 骨架:
    - IPhaseEndCondition.cs:5
    - PhaseEndConditionContext.cs:5
    - PhaseEndConditionFactory.cs:5
    - 以及 4 个实现类:
        - NonePhaseEndCondition
        - TimeElapsedPhaseEndCondition
        - EnemiesClearedPhaseEndCondition
        - BossDeadPhaseEndCondition
2026-03-07 11:30:44 +08:00
SepComet 0ff04f02f4 拆分 CombatScheduler 状态机到独立文件 2026-03-07 11:21:07 +08:00