BattleMoveFixedDamageRuleResolver

固定伤害类招式原生规则解析器。

设计意图:

  • 把“固定数值 / 按攻击方等级 / 按目标当前生命比例”这类不走 A/D 公式的规则, 从主伤害 phase step 中拆成独立组件,避免 BattleMovePowerDamagePhaseStep 继续膨胀。

  • 让 move fixture 可以直接声明固定伤害规则,而不是要求调用方始终预先把 damage 算好。

当前支持的静态元数据:

  • fixedDamage: 直接固定伤害值,例如 20、40。

  • fixedDamageMode=attacker_level: 以攻击方等级作为固定伤害。

  • fixedDamageMode=target_current_hp_ratio + fixedDamageValue: 以目标当前 HP 比例结算伤害。

约定:

  • 这里返回的是“固定伤害本体”;属性免疫仍由主伤害 phase 统一裁决。

  • 当前生命比例模式会对仍存活的目标至少造成 1 点伤害,避免出现命中后 0 伤害的空结算。

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard

判断当前招式是否声明了固定伤害规则。

Link copied to clipboard
fun resolve(moveData: Map<String, Any?>, attacker: UnitState?, target: UnitState?): Int?

解析当前招式的固定伤害结果。