1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-18 02:49:53 +08:00

Merge branch 'master' into catmull-sliders

This commit is contained in:
Dean Herbert
2018-02-01 20:58:33 +09:00
committed by GitHub
Unverified
3 changed files with 11 additions and 7 deletions
@@ -102,8 +102,14 @@ namespace osu.Game.Rulesets.Replays
if (hasFrames)
{
//if we changed frames, we want to execute once *exactly* on the frame's time.
if (currentDirection == time.CompareTo(NextFrame.Time) && advanceFrame())
// check if the next frame is in the "future" for the current playback direction
if (currentDirection != time.CompareTo(NextFrame.Time))
{
// if we didn't change frames, we need to ensure we are allowed to run frames in between, else return null.
if (inImportantSection)
return null;
}
else if (advanceFrame())
{
// If going backwards, we need to execute once _before_ the frame time to reverse any judgements
// that would occur as a result of this frame in forward playback
@@ -111,10 +117,6 @@ namespace osu.Game.Rulesets.Replays
return currentTime = CurrentFrame.Time - 1;
return currentTime = CurrentFrame.Time;
}
//if we didn't change frames, we need to ensure we are allowed to run frames in between, else return null.
if (inImportantSection)
return null;
}
return currentTime = time;
@@ -140,6 +140,8 @@ namespace osu.Game.Rulesets.UI
if (!base.UpdateSubTree())
return false;
UpdateSubTreeMasking(ScreenSpaceDrawQuad.AABBFloat);
if (isAttached)
{
// When handling replay input, we need to consider the possibility of fast-forwarding, which may cause the clock to be updated