BattleSessionSkippedActionEventPayload.kt
package io.github.lishangbu.avalon.game.battle.engine.core.session
/**
* action 被跳过时的结构化事件 payload。
*
* @property actionType 被跳过的动作种类。
* @property submittingUnitId 提交动作的单位;没有明确单位时为空。
* @property sideId 动作所属 side;没有明确 side 时为空。
* @property reason 本次被跳过的原因。
*/
data class BattleSessionActionSkippedPayload(
val actionType: BattleSessionActionEventKind,
val submittingUnitId: String? = null,
val sideId: String? = null,
val reason: String,
) : BattleSessionEventPayload {
/**
* 当前 payload 对应的事件类型。
*/
override val type: BattleSessionEventType = BattleSessionEventType.ACTION_SKIPPED
}