pub struct GameStateV3 {Show 16 fields
pub version: u32,
pub cuques: f64,
pub total_clicks: u64,
pub lifetime_cuques: f64,
pub best_fps: f64,
pub golden_caught: u64,
pub lucky_caught: u64,
pub frenzy_caught: u64,
pub buff_caught: u64,
pub green_coin_caught: u64,
pub fingerers_state: HashMap<String, FingererStateV2>,
pub achievements_earned: HashSet<String>,
pub upgrades_earned: HashSet<String>,
pub prestige: u64,
pub total_play_ticks: u64,
pub buffs: Vec<BuffV2>,
}Fields§
§version: u32§cuques: f64§total_clicks: u64§lifetime_cuques: f64§best_fps: f64§golden_caught: u64Lifetime grand total across every powerup kind. Strict rollup; existing achievements (Golden Touch, Golden Hoarder) gate on this.
lucky_caught: u64§frenzy_caught: u64§buff_caught: u64§green_coin_caught: u64§fingerers_state: HashMap<String, FingererStateV2>§achievements_earned: HashSet<String>§upgrades_earned: HashSet<String>§prestige: u64§total_play_ticks: u64§buffs: Vec<BuffV2>Implementations§
Source§impl GameStateV3
impl GameStateV3
Sourcepub fn into_current(self) -> GameState
pub fn into_current(self) -> GameState
Convert a V3 snapshot into the live GameState by chaining through
V4. The live shape no longer carries upgrades_earned; V4’s frozen
From<GameStateV3> impl drops it. (Per CLAUDE.md, this delegation
is the one mutation a frozen file is allowed: keeping the chain
reachable as later versions land.)
Trait Implementations§
Source§impl Clone for GameStateV3
impl Clone for GameStateV3
Source§fn clone(&self) -> GameStateV3
fn clone(&self) -> GameStateV3
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'de> Deserialize<'de> for GameStateV3
impl<'de> Deserialize<'de> for GameStateV3
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl From<GameStateV2> for GameStateV3
V2 → V3 conversion. Drops goldens_since_green_coin. Every other field
passes through verbatim; version is stamped to 3.
impl From<GameStateV2> for GameStateV3
V2 → V3 conversion. Drops goldens_since_green_coin. Every other field
passes through verbatim; version is stamped to 3.
Source§fn from(v2: GameStateV2) -> Self
fn from(v2: GameStateV2) -> Self
Source§impl From<GameStateV3> for GameStateV4
V3 → V4 conversion. Drops upgrades_earned (old hardcoded UPGRADES
catalog is retired); inits a fresh empty UpgradeTreeState. Every
other field passes through verbatim; version is stamped to 4.
impl From<GameStateV3> for GameStateV4
V3 → V4 conversion. Drops upgrades_earned (old hardcoded UPGRADES
catalog is retired); inits a fresh empty UpgradeTreeState. Every
other field passes through verbatim; version is stamped to 4.
The breaking change is intentional — coordinated with the game’s 1.0.0 release. Players who upgrade lose their old hand-curated upgrade purchases but keep cuques, fingerers, achievements, prestige, and active buffs.
Source§fn from(v3: GameStateV3) -> Self
fn from(v3: GameStateV3) -> Self
Auto Trait Implementations§
impl Freeze for GameStateV3
impl RefUnwindSafe for GameStateV3
impl Send for GameStateV3
impl Sync for GameStateV3
impl Unpin for GameStateV3
impl UnsafeUnpin for GameStateV3
impl UnwindSafe for GameStateV3
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more