mirror of
https://github.com/ppy/osu
synced 2024-12-15 11:25:29 +00:00
d0f30b7b42
This is a workaround of a timing issue. KeyCounter is disabled while break time (`HasCompleted == true`). When the last keypress is exactly at the same time the map ends, the last frame was considered in a break time while forward play but considered not in a break time while rewinding. This inconsistency made the last keypress not decremented in the key counter when a replay is rewound. The situation regularly happens in osu!standard because the map ends right after the player hits the last hit circle. It was caught by `TestSceneGameplayRewinding`. This commit makes the update of the map completion delayed one frame. The problematic keypress frame is now processed strictly before the map completion, and the map completion status is correctly rewound before the keypress frame. |
||
---|---|---|
.. | ||
AccumulatingHealthProcessor.cs | ||
DrainingHealthProcessor.cs | ||
HealthProcessor.cs | ||
HitEvent.cs | ||
HitResult.cs | ||
HitWindows.cs | ||
JudgementProcessor.cs | ||
ScoreProcessor.cs |