mirror of
https://github.com/osukey/osukey.git
synced 2025-07-03 01:09:57 +09:00
Store Result.TimeAbsolute separately from offset
Calculating from TimeOffset is bad because it loses precision. The result time won't change anymore even If `HitObject.GetEndTime()` changes later.
This commit is contained in:
@ -455,7 +455,7 @@ namespace osu.Game.Rulesets.UI
|
||||
private void onNewResult(DrawableHitObject drawable, JudgementResult result)
|
||||
{
|
||||
// Not using result.TimeAbsolute because that might change and also there is a potential precision issue.
|
||||
judgementResults.Push(new JudgementResultEntry(Time.Current, drawable.Entry.AsNonNull(), result));
|
||||
judgementResults.Push(new JudgementResultEntry(drawable.Entry.AsNonNull(), result));
|
||||
|
||||
NewResult?.Invoke(drawable, result);
|
||||
}
|
||||
@ -466,8 +466,7 @@ namespace osu.Game.Rulesets.UI
|
||||
RevertResult?.Invoke(result);
|
||||
entry.HitObjectEntry.OnRevertResult();
|
||||
|
||||
result.TimeOffset = 0;
|
||||
result.Type = HitResult.None;
|
||||
result.Reset();
|
||||
}
|
||||
|
||||
#region Editor logic
|
||||
|
Reference in New Issue
Block a user