store duration instead of end_time (/b/1901200+Mania)

This commit is contained in:
MaxOhn
2024-02-19 15:03:05 +01:00
parent 305041376b
commit f2bb6ce6cb
10 changed files with 39 additions and 33 deletions
+4 -2
View File
@@ -132,8 +132,10 @@ fn convert(map: &mut Beatmap) {
last_values.pattern = new_pattern;
}
}
HitObjectKind::Spinner(Spinner { end_time })
| HitObjectKind::Hold(HoldNote { end_time }) => {
HitObjectKind::Spinner(Spinner { duration })
| HitObjectKind::Hold(HoldNote { duration }) => {
let end_time = obj.start_time + duration;
let mut gen = EndTimeObjectPatternGenerator::new(
&mut random,
obj,
+9 -5
View File
@@ -72,7 +72,7 @@ impl Pattern {
pos,
start_time: generator.inner.hit_object.start_time,
kind: HitObjectKind::Hold(HoldNote {
end_time: generator.end_time,
duration: generator.end_time - generator.inner.hit_object.start_time,
}),
}
} else {
@@ -102,11 +102,13 @@ impl Pattern {
kind: HitObjectKind::Circle,
}
} else {
let start_time = f64::from(start_time);
HitObject {
pos,
start_time: f64::from(start_time),
start_time,
kind: HitObjectKind::Hold(HoldNote {
end_time: f64::from(end_time),
duration: f64::from(end_time) - start_time,
}),
}
};
@@ -131,11 +133,13 @@ impl Pattern {
kind: HitObjectKind::Circle,
}
} else {
let start_time = f64::from(start_time);
HitObject {
pos,
start_time: f64::from(start_time),
start_time,
kind: HitObjectKind::Hold(HoldNote {
end_time: f64::from(end_time),
duration: f64::from(end_time) - start_time,
}),
}
};
@@ -80,9 +80,6 @@ impl<'h> EndTimeObjectPatternGenerator<'h> {
&mut self,
mut initial_column: u8,
lower: Option<i32>,
// upper: Option<i32>,
// next_column: Option<&dyn Fn(u8) -> u8>,
// validation: Option<&dyn Fn(i32) -> bool>,
patterns: &[&Pattern],
) -> u8 {
let lower = lower.unwrap_or_else(|| self.inner.random_start());