DefaultBattleSessionFactory

class DefaultBattleSessionFactory(effectRepository: EffectDefinitionRepository, battleFlowEngine: BattleFlowEngine, battleFlowPhaseProcessor: BattleFlowPhaseProcessor, battleMutationInterceptorChain: BattleMutationInterceptorChain, captureActionResolver: CaptureActionResolver, mutationApplier: MutationApplier, replacementStrategy: ReplacementStrategy, actionExecutionSupport: BattleSessionActionExecutionSupport, choiceHandlerRegistry: BattleSessionChoiceHandlerRegistry, actionHandlerRegistry: BattleSessionActionHandlerRegistry, turnPipeline: BattleSessionTurnPipeline, turnReadySpecification: BattleSessionTurnReadySpecification, unitChoiceSpecification: BattleSessionUnitChoiceSpecification, runChoiceSpecification: BattleSessionRunChoiceSpecification, targetChoiceSpecification: BattleSessionTargetChoiceSpecification, captureChoiceSpecification: BattleSessionCaptureChoiceSpecification, moveChoiceSpecification: BattleSessionMoveChoiceSpecification, itemChoiceSpecification: BattleSessionItemChoiceSpecification, targetQueryService: BattleSessionTargetQueryService, actionSortingStrategy: BattleSessionActionSortingStrategy, eventPublisher: BattleSessionEventPublisher, commandFactory: BattleSessionCommandFactory) : BattleSessionFactory

默认 BattleSession 工厂。

设计意图:

  • 统一装配 battle flow、processor、mutation apply 和 replacement strategy。

  • 为 gateway 与 application 层提供一个简单且稳定的 session 创建入口。

Constructors

Link copied to clipboard
constructor(effectRepository: EffectDefinitionRepository, battleFlowEngine: BattleFlowEngine, battleFlowPhaseProcessor: BattleFlowPhaseProcessor, battleMutationInterceptorChain: BattleMutationInterceptorChain, captureActionResolver: CaptureActionResolver, mutationApplier: MutationApplier, replacementStrategy: ReplacementStrategy, actionExecutionSupport: BattleSessionActionExecutionSupport, choiceHandlerRegistry: BattleSessionChoiceHandlerRegistry, actionHandlerRegistry: BattleSessionActionHandlerRegistry, turnPipeline: BattleSessionTurnPipeline, turnReadySpecification: BattleSessionTurnReadySpecification, unitChoiceSpecification: BattleSessionUnitChoiceSpecification, runChoiceSpecification: BattleSessionRunChoiceSpecification, targetChoiceSpecification: BattleSessionTargetChoiceSpecification, captureChoiceSpecification: BattleSessionCaptureChoiceSpecification, moveChoiceSpecification: BattleSessionMoveChoiceSpecification, itemChoiceSpecification: BattleSessionItemChoiceSpecification, targetQueryService: BattleSessionTargetQueryService, actionSortingStrategy: BattleSessionActionSortingStrategy, eventPublisher: BattleSessionEventPublisher, commandFactory: BattleSessionCommandFactory)

Functions

Link copied to clipboard
open override fun create(sessionId: String, formatId: String): BattleSession
Link copied to clipboard
open override fun restore(state: BattleSessionState): BattleSession