remove clock rate from strains section length
This commit is contained in:
@@ -3,6 +3,9 @@
|
|||||||
- __Adjustments:__
|
- __Adjustments:__
|
||||||
- When passing an osu!std map to `TaikoPP` or `ManiaPP`, it now automatically converts the map internally. For osu!catch it was already happening trivially.
|
- When passing an osu!std map to `TaikoPP` or `ManiaPP`, it now automatically converts the map internally. For osu!catch it was already happening trivially.
|
||||||
|
|
||||||
|
- __Fixes:__
|
||||||
|
- The fields `section_len` for all strain structs no longer depends on the clock rate.
|
||||||
|
|
||||||
# v0.9.0 (2022-10-24)
|
# v0.9.0 (2022-10-24)
|
||||||
|
|
||||||
Big changes including the most recent [osu!](https://osu.ppy.sh/home/news/2022-09-30-changes-to-osu-sr-and-pp), [taiko](https://osu.ppy.sh/home/news/2022-09-28-changes-to-osu-taiko-sr-and-pp), and [mania](https://osu.ppy.sh/home/news/2022-10-09-changes-to-osu-mania-sr-and-pp) updates, aswell as various breaking changes.
|
Big changes including the most recent [osu!](https://osu.ppy.sh/home/news/2022-09-30-changes-to-osu-sr-and-pp), [taiko](https://osu.ppy.sh/home/news/2022-09-28-changes-to-osu-taiko-sr-and-pp), and [mania](https://osu.ppy.sh/home/news/2022-10-09-changes-to-osu-mania-sr-and-pp) updates, aswell as various breaking changes.
|
||||||
|
|||||||
+1
-2
@@ -107,11 +107,10 @@ impl<'map> CatchStars<'map> {
|
|||||||
/// Suitable to plot the difficulty of a map over time.
|
/// Suitable to plot the difficulty of a map over time.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn strains(self) -> CatchStrains {
|
pub fn strains(self) -> CatchStrains {
|
||||||
let clock_rate = self.clock_rate.unwrap_or_else(|| self.mods.clock_rate());
|
|
||||||
let (movement, _) = calculate_movement(self);
|
let (movement, _) = calculate_movement(self);
|
||||||
|
|
||||||
CatchStrains {
|
CatchStrains {
|
||||||
section_len: SECTION_LENGTH * clock_rate,
|
section_len: SECTION_LENGTH,
|
||||||
movement: movement.strain_peaks,
|
movement: movement.strain_peaks,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-2
@@ -134,11 +134,10 @@ impl<'map> ManiaStars<'map> {
|
|||||||
/// Suitable to plot the difficulty of a map over time.
|
/// Suitable to plot the difficulty of a map over time.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn strains(self) -> ManiaStrains {
|
pub fn strains(self) -> ManiaStrains {
|
||||||
let clock_rate = self.clock_rate.unwrap_or_else(|| self.mods.clock_rate());
|
|
||||||
let ManiaResult { strain, .. } = calculate_result(self);
|
let ManiaResult { strain, .. } = calculate_result(self);
|
||||||
|
|
||||||
ManiaStrains {
|
ManiaStrains {
|
||||||
section_len: SECTION_LEN * clock_rate,
|
section_len: SECTION_LEN,
|
||||||
strains: strain.strain_peaks,
|
strains: strain.strain_peaks,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-3
@@ -187,7 +187,6 @@ impl<'map> OsuStars<'map> {
|
|||||||
/// Suitable to plot the difficulty of a map over time.
|
/// Suitable to plot the difficulty of a map over time.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn strains(self) -> OsuStrains {
|
pub fn strains(self) -> OsuStrains {
|
||||||
let clock_rate = self.clock_rate.unwrap_or_else(|| self.mods.clock_rate());
|
|
||||||
let (skills, _) = calculate_skills(self);
|
let (skills, _) = calculate_skills(self);
|
||||||
|
|
||||||
let Skills {
|
let Skills {
|
||||||
@@ -198,7 +197,7 @@ impl<'map> OsuStars<'map> {
|
|||||||
} = skills;
|
} = skills;
|
||||||
|
|
||||||
OsuStrains {
|
OsuStrains {
|
||||||
section_len: SECTION_LEN * clock_rate,
|
section_len: SECTION_LEN,
|
||||||
aim: aim.strain_peaks,
|
aim: aim.strain_peaks,
|
||||||
aim_no_sliders: aim_no_sliders.strain_peaks,
|
aim_no_sliders: aim_no_sliders.strain_peaks,
|
||||||
speed: speed.strain_peaks,
|
speed: speed.strain_peaks,
|
||||||
@@ -212,7 +211,7 @@ impl<'map> OsuStars<'map> {
|
|||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub struct OsuStrains {
|
pub struct OsuStrains {
|
||||||
/// Time in ms inbetween two strains.
|
/// Time in ms inbetween two strains.
|
||||||
pub section_len: f64,
|
pub section_len: f64, // TODO: remove field, make it a method
|
||||||
/// Strain peaks of the aim skill.
|
/// Strain peaks of the aim skill.
|
||||||
pub aim: Vec<f64>,
|
pub aim: Vec<f64>,
|
||||||
/// Strain peaks of the aim skill without sliders.
|
/// Strain peaks of the aim skill without sliders.
|
||||||
|
|||||||
+1
-2
@@ -165,7 +165,6 @@ impl<'map> TaikoStars<'map> {
|
|||||||
/// Suitable to plot the difficulty of a map over time.
|
/// Suitable to plot the difficulty of a map over time.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn strains(self) -> TaikoStrains {
|
pub fn strains(self) -> TaikoStrains {
|
||||||
let clock_rate = self.clock_rate.unwrap_or_else(|| self.mods.clock_rate());
|
|
||||||
let (peaks, _) = calculate_skills(self);
|
let (peaks, _) = calculate_skills(self);
|
||||||
|
|
||||||
let PeaksRaw {
|
let PeaksRaw {
|
||||||
@@ -175,7 +174,7 @@ impl<'map> TaikoStars<'map> {
|
|||||||
} = peaks.into_raw();
|
} = peaks.into_raw();
|
||||||
|
|
||||||
TaikoStrains {
|
TaikoStrains {
|
||||||
section_len: SECTION_LEN as f64 * clock_rate,
|
section_len: SECTION_LEN as f64,
|
||||||
color: colour,
|
color: colour,
|
||||||
rhythm,
|
rhythm,
|
||||||
stamina,
|
stamina,
|
||||||
|
|||||||
Reference in New Issue
Block a user