use crate::{
Beatmap,
any::{Difficulty, difficulty::skills::StrainSkill},
mania::{convert::prepare_map, difficulty::DifficultyValues},
model::mode::ConvertError,
};
#[derive(Clone, Debug, PartialEq)]
pub struct ManiaStrains {
pub strains: Vec<f64>,
}
impl ManiaStrains {
pub const SECTION_LEN: f64 = 400.0;
}
pub fn strains(difficulty: &Difficulty, map: &Beatmap) -> Result<ManiaStrains, ConvertError> {
let map = prepare_map(difficulty, map)?;
let values = DifficultyValues::calculate(difficulty, &map);
Ok(ManiaStrains {
strains: values.strain.into_current_strain_peaks(),
})
}