pub struct FingererState {
pub count: u32,
pub modifiers: Vec<Modifier>,
pub aggregate: FingererAggregate,
}Expand description
Per-fingerer persistent state.
count is the number of units the player owns. modifiers is the list
of Modifiers attached to this fingerer (Green Coin permanents,
Purple Coin temp boosts, future buffs/debuffs); see
crate::game::modifier for the stacking rules. aggregate is a
derived cache rebuilt from modifiers on add/remove/expire and on
save load — it’s #[serde(skip)] because it’s pure-derived data, and
the live state is always reconstructable from modifiers.
Fields§
§count: u32§modifiers: Vec<Modifier>§aggregate: FingererAggregatePre-computed aggregate of every effect across every modifier.
Rebuilt by attach_modifier / per-tick expiry / migrate_runtime.
FPS reads MUST consult this, not the Vec.
Trait Implementations§
Source§impl Clone for FingererState
impl Clone for FingererState
Source§fn clone(&self) -> FingererState
fn clone(&self) -> FingererState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FingererState
impl Debug for FingererState
Source§impl Default for FingererState
impl Default for FingererState
Source§fn default() -> FingererState
fn default() -> FingererState
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for FingererState
impl<'de> Deserialize<'de> for FingererState
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<FingererStateV2> for FingererState
impl From<FingererStateV2> for FingererState
Source§fn from(v: FingererStateV2) -> Self
fn from(v: FingererStateV2) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for FingererState
impl RefUnwindSafe for FingererState
impl Send for FingererState
impl Sync for FingererState
impl Unpin for FingererState
impl UnsafeUnpin for FingererState
impl UnwindSafe for FingererState
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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