feat(mc-turn): ✨ Introduce refound suppression tracking in GameState to prevent duplicate refounds during turn-based gameplay
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
This commit is contained in:
parent
02a152b6b1
commit
aabaec35e6
1 changed files with 7 additions and 0 deletions
|
|
@ -914,6 +914,13 @@ pub struct PlayerState {
|
|||
/// `process_siege` when a city changes ownership.
|
||||
#[serde(default)]
|
||||
pub cities_lost_total: u32,
|
||||
/// p1-29i: game-turn on which this player most recently LOST a city to
|
||||
/// capture. Drives the post-capture refound cooldown
|
||||
/// (`CombatBalance::refound_suppression`): `try_found_city` refuses to found
|
||||
/// a replacement while `turn - last_city_lost_turn < cooldown_turns`.
|
||||
/// `None` until the first city loss (and on old saves) → no suppression.
|
||||
#[serde(default, skip_serializing_if = "Option::is_none")]
|
||||
pub last_city_lost_turn: Option<u32>,
|
||||
/// Derived realm-level statistics recomputed at end of every turn by
|
||||
/// `TurnProcessor::step → recompute_derived_stats`. All future derived
|
||||
/// scalars land here — single recompute site rule, see `mc_core::derived_stats`.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue