fix: consider passed_objects in mania
This commit is contained in:
+12
-6
@@ -227,16 +227,22 @@ impl<'map> ManiaPP<'map> {
|
|||||||
|
|
||||||
/// Create the [`ManiaScoreState`] that will be used for performance calculation.
|
/// Create the [`ManiaScoreState`] that will be used for performance calculation.
|
||||||
pub fn generate_state(&mut self) -> ManiaScoreState {
|
pub fn generate_state(&mut self) -> ManiaScoreState {
|
||||||
let attrs = match self.map_or_attrs {
|
let n_objects = match self.passed_objects {
|
||||||
MapOrElse::Map(ref map) => {
|
Some(passed) => passed,
|
||||||
let attrs = self.generate_attributes(map);
|
None => {
|
||||||
|
let attrs = match self.map_or_attrs {
|
||||||
|
MapOrElse::Map(ref map) => {
|
||||||
|
let attrs = self.generate_attributes(map);
|
||||||
|
|
||||||
self.map_or_attrs.else_or_insert(attrs)
|
self.map_or_attrs.else_or_insert(attrs)
|
||||||
|
}
|
||||||
|
MapOrElse::Else(ref attrs) => attrs,
|
||||||
|
};
|
||||||
|
|
||||||
|
attrs.n_objects
|
||||||
}
|
}
|
||||||
MapOrElse::Else(ref attrs) => attrs,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
let n_objects = attrs.n_objects();
|
|
||||||
let priority = self.hitresult_priority.unwrap_or_default();
|
let priority = self.hitresult_priority.unwrap_or_default();
|
||||||
|
|
||||||
let n_misses = self.n_misses.map_or(0, |n| n.min(n_objects));
|
let n_misses = self.n_misses.map_or(0, |n| n.min(n_objects));
|
||||||
|
|||||||
Reference in New Issue
Block a user