Struct ScoreState

Source
pub struct ScoreState {
    pub max_combo: u32,
    pub osu_large_tick_hits: u32,
    pub osu_small_tick_hits: u32,
    pub slider_end_hits: u32,
    pub n_geki: u32,
    pub n_katu: u32,
    pub n300: u32,
    pub n100: u32,
    pub n50: u32,
    pub misses: u32,
}
Expand description

Aggregation for a score’s current state.

Fields§

§max_combo: u32

Maximum combo that the score has had so far. Not the maximum possible combo of the map so far.

Note that for osu!catch only fruits and droplets are considered for combo.

Irrelevant for osu!mania.

§osu_large_tick_hits: u32

“Large tick” hits for osu!standard.

The meaning depends on the kind of score:

  • if set on osu!stable, this field is irrelevant and can be 0
  • if set on osu!lazer with slider accuracy, this field is the amount of hit slider ticks and repeats
  • if set on osu!lazer without slider accuracy, this field is the amount of hit slider heads, ticks, and repeats

Only relevant for osu!lazer.

§osu_small_tick_hits: u32

“Small ticks” hits for osu!standard.

These are essentially the slider end hits for lazer scores without slider accuracy.

Only relevant for osu!lazer.

§slider_end_hits: u32

Amount of successfully hit slider ends.

Only relevant for osu!standard in lazer.

§n_geki: u32

Amount of current gekis (n320 for osu!mania).

§n_katu: u32

Amount of current katus (tiny droplet misses for osu!catch / n200 for osu!mania).

§n300: u32

Amount of current 300s (fruits for osu!catch).

§n100: u32

Amount of current 100s (droplets for osu!catch).

§n50: u32

Amount of current 50s (tiny droplets for osu!catch).

§misses: u32

Amount of current misses (fruits + droplets for osu!catch).

Implementations§

Source§

impl ScoreState

Source

pub const fn new() -> Self

Create a new empty score state.

Source

pub fn total_hits(&self, mode: GameMode) -> u32

Return the total amount of hits by adding everything up based on the mode.

Trait Implementations§

Source§

impl Clone for ScoreState

Source§

fn clone(&self) -> ScoreState

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ScoreState

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ScoreState

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl From<CatchScoreState> for ScoreState

Source§

fn from(state: CatchScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<ManiaScoreState> for ScoreState

Source§

fn from(state: ManiaScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<OsuScoreState> for ScoreState

Source§

fn from(state: OsuScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<ScoreState> for CatchScoreState

Source§

fn from(state: ScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<ScoreState> for ManiaScoreState

Source§

fn from(state: ScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<ScoreState> for OsuScoreState

Source§

fn from(state: ScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<ScoreState> for TaikoScoreState

Source§

fn from(state: ScoreState) -> Self

Converts to this type from the input type.
Source§

impl From<TaikoScoreState> for ScoreState

Source§

fn from(state: TaikoScoreState) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for ScoreState

Source§

fn eq(&self, other: &ScoreState) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ScoreState

Source§

impl StructuralPartialEq for ScoreState

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.