BattleSessionDefaultTurnStepFactory.kt
package io.github.lishangbu.avalon.game.battle.engine.core.session
/**
* 默认 battle turn step 列表工厂。
*
* 设计意图:
* - 把默认步骤装配从 `DefaultBattleSessionTurnPipeline` 主类中拆开;
* - 让 pipeline 自身不再关心“默认有哪些步骤”,只关心“如何执行这些步骤”;
* - 便于测试和未来扩展不同 battle mode 的默认 turn pipeline。
*/
internal object BattleSessionDefaultTurnStepFactory {
fun createDefaultSteps(): List<BattleSessionTurnStep> =
listOf(
BattleSessionTurnValidationStep(),
BattleSessionBeforeTurnStep(),
BattleSessionQueuedActionExecutionStep(),
BattleSessionTurnAdvanceStep(),
)
}