store duration instead of end_time (/b/1901200+Mania)
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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());
|
||||
|
||||
Reference in New Issue
Block a user