Merge branch 'master' into catmull-sliders

This commit is contained in:
Dean Herbert 2018-02-01 20:58:33 +09:00 committed by GitHub
commit 5ba84a67f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 7 deletions

@ -1 +1 @@
Subproject commit 90bf49a2df3dbad5994d922df63e4891c622dbc3
Subproject commit d89e6cd63140c2b73631b79ff83b130a2b9958ed

View File

@ -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;

View File

@ -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