BattleMoveResolutionContext

class BattleMoveResolutionContext(snapshot: BattleRuntimeSnapshot, val moveEffect: EffectDefinition, val attackerId: String, val targetId: String, val sourceId: String, val attributes: Map<String, Any?>, accuracy: Int?, evasion: Int?, basePower: Int, damage: Int)

单次出招主流程在 pipeline 中共享的可变上下文。

设计意图:

  • 把 move resolution 的中间状态从 DefaultBattleFlowEngine 主体中抽离出来。

  • 让各个 phase step 只修改自己关注的字段,而不需要关心最终结果对象如何组装。

Constructors

Link copied to clipboard
constructor(snapshot: BattleRuntimeSnapshot, moveEffect: EffectDefinition, attackerId: String, targetId: String, sourceId: String, attributes: Map<String, Any?>, accuracy: Int?, evasion: Int?, basePower: Int, damage: Int)

Properties

Link copied to clipboard

当前阶段持有的命中值。

Link copied to clipboard

出手单位标识。

Link copied to clipboard

透传给 hook phase 的附加属性。

Link copied to clipboard

当前阶段持有的威力值。

Link copied to clipboard

本次出招是否已经在前置阶段被取消。

Link copied to clipboard

本次出招是否击中要害。

Link copied to clipboard
var damage: Int

当前阶段持有的伤害值。

Link copied to clipboard

本次伤害浮动使用的随机倍率。

Link copied to clipboard
var evasion: Int?

当前阶段持有的回避值。

Link copied to clipboard

当前阶段是否已经被特殊规则显式判定为必中/必不中。

Link copied to clipboard

本次出招是否成功命中。

Link copied to clipboard

当前正在结算的 effect 定义。

Link copied to clipboard

当前阶段是否应跳过常规 accuracy/evasion 修正链。

Link copied to clipboard

当前阶段持有的最新 battle 快照。

Link copied to clipboard

本次结算的来源单位标识。

Link copied to clipboard

当前目标单位标识。

Functions

Link copied to clipboard

把当前上下文标记为已取消。

Link copied to clipboard

把当前上下文收敛为最终的 move resolution 结果。