FieldState.kt

package io.github.lishangbu.avalon.game.battle.engine.core.model

/**
 * 场地级运行时状态骨架。
 *
 * 设计意图:
 * - 表示天气、地形等战场公共状态。
 * - 避免把 battle 共享状态和 side / unit 状态混在一起。
 *
 * @property weatherState 当前天气的运行时状态。
 * @property terrainState 当前地形的运行时状态。
 * @property conditionStates 当前 field 级附着条件表。
 */
data class FieldState(
    val weatherState: AttachedEffectState? = null,
    val terrainState: AttachedEffectState? = null,
    val conditionStates: Map<String, AttachedEffectState> = emptyMap(),
)