diff --git a/osu-framework b/osu-framework index dcbd7a0b6f..07fd653f42 160000 --- a/osu-framework +++ b/osu-framework @@ -1 +1 @@ -Subproject commit dcbd7a0b6f536f6aadf13a720db40a1d76bf52e2 +Subproject commit 07fd653f422bfb7faf382f46b731c18eed24baae diff --git a/osu.Game.Rulesets.Taiko/Objects/Drawables/DrawableSwell.cs b/osu.Game.Rulesets.Taiko/Objects/Drawables/DrawableSwell.cs index 57b2576a8b..37efd8aba4 100644 --- a/osu.Game.Rulesets.Taiko/Objects/Drawables/DrawableSwell.cs +++ b/osu.Game.Rulesets.Taiko/Objects/Drawables/DrawableSwell.cs @@ -148,9 +148,8 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables var completion = (float)userHits / HitObject.RequiredHits; expandingRing.FadeTo(expandingRing.Alpha + MathHelper.Clamp(completion / 16, 0.1f, 0.6f), 50); - expandingRing.Delay(50); - expandingRing.FadeTo(completion / 8, 2000, EasingTypes.OutQuint); - expandingRing.DelayReset(); + using (expandingRing.BeginDelayedSequence(50)) + expandingRing.FadeTo(completion / 8, 2000, EasingTypes.OutQuint); symbol.RotateTo((float)(completion * HitObject.Duration / 8), 4000, EasingTypes.OutQuint); diff --git a/osu.Game/Graphics/UserInterface/StarCounter.cs b/osu.Game/Graphics/UserInterface/StarCounter.cs index c046749dad..295cdac81d 100644 --- a/osu.Game/Graphics/UserInterface/StarCounter.cs +++ b/osu.Game/Graphics/UserInterface/StarCounter.cs @@ -131,14 +131,14 @@ namespace osu.Game.Graphics.UserInterface foreach (var star in stars.Children) { star.ClearTransforms(true); - if (count <= newValue) - star.Delay(Math.Max(i - count, 0) * animationDelay, true); - else - star.Delay(Math.Max(count - 1 - i, 0) * animationDelay, true); - star.FadeTo(i < newValue ? 1.0f : minStarAlpha, fadingDuration); - star.Icon.ScaleTo(getStarScale(i, newValue), scalingDuration, scalingEasing); - star.DelayReset(); + var delay = (count <= newValue ? Math.Max(i - count, 0) : Math.Max(count - 1 - i, 0)) * animationDelay; + + using (BeginDelayedSequence(delay, true)) + { + star.FadeTo(i < newValue ? 1.0f : minStarAlpha, fadingDuration); + star.Icon.ScaleTo(getStarScale(i, newValue), scalingDuration, scalingEasing); + } i++; } diff --git a/osu.Game/Screens/Ranking/Results.cs b/osu.Game/Screens/Ranking/Results.cs index ffe72966f5..5bcaba7813 100644 --- a/osu.Game/Screens/Ranking/Results.cs +++ b/osu.Game/Screens/Ranking/Results.cs @@ -70,24 +70,26 @@ namespace osu.Game.Screens.Ranking circleOuterBackground.ScaleTo(1, transition_time, EasingTypes.OutQuint); circleOuterBackground.FadeTo(1, transition_time, EasingTypes.OutQuint); - Content.Delay(transition_time * 0.25f, true); + using (BeginDelayedSequence(transition_time * 0.25f, true)) + { - circleOuter.ScaleTo(1, transition_time, EasingTypes.OutQuint); - circleOuter.FadeTo(1, transition_time, EasingTypes.OutQuint); + circleOuter.ScaleTo(1, transition_time, EasingTypes.OutQuint); + circleOuter.FadeTo(1, transition_time, EasingTypes.OutQuint); - Content.Delay(transition_time * 0.3f, true); + using (BeginDelayedSequence(transition_time * 0.3f, true)) + { + backgroundParallax.FadeIn(transition_time, EasingTypes.OutQuint); - backgroundParallax.FadeIn(transition_time, EasingTypes.OutQuint); + circleInner.ScaleTo(1, transition_time, EasingTypes.OutQuint); + circleInner.FadeTo(1, transition_time, EasingTypes.OutQuint); - circleInner.ScaleTo(1, transition_time, EasingTypes.OutQuint); - circleInner.FadeTo(1, transition_time, EasingTypes.OutQuint); - - Content.Delay(transition_time * 0.4f, true); - - modeChangeButtons.FadeIn(transition_time, EasingTypes.OutQuint); - currentPage.FadeIn(transition_time, EasingTypes.OutQuint); - - Content.DelayReset(); + using (BeginDelayedSequence(transition_time * 0.4f, true)) + { + modeChangeButtons.FadeIn(transition_time, EasingTypes.OutQuint); + currentPage.FadeIn(transition_time, EasingTypes.OutQuint); + } + } + } } protected override bool OnExiting(Screen next) diff --git a/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs b/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs index 08f270741c..5783893b3d 100644 --- a/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs +++ b/osu.Game/Screens/Tournament/ScrollingTeamContainer.cs @@ -106,7 +106,7 @@ namespace osu.Game.Screens.Tournament speedTo(0f, 2000); tracker.FadeIn(200); - delayedStateChangeDelegate = Delay(2300).Schedule(() => scrollState = ScrollState.Stopped); + delayedStateChangeDelegate = Scheduler.AddDelayed(() => scrollState = ScrollState.Stopped, 2300); break; case ScrollState.Stopped: // Find closest to center @@ -144,7 +144,7 @@ namespace osu.Game.Screens.Tournament st.Selected = true; OnSelected?.Invoke(st.Team); - delayedStateChangeDelegate = Delay(10000).Schedule(() => scrollState = ScrollState.Idle); + delayedStateChangeDelegate = Scheduler.AddDelayed(() => scrollState = ScrollState.Idle, 10000); break; case ScrollState.Idle: resetSelected(); @@ -295,11 +295,7 @@ namespace osu.Game.Screens.Tournament } } - private void speedTo(float value, double duration = 0, EasingTypes easing = EasingTypes.None) - { - DelayReset(); - TransformTo(() => speed, value, duration, easing, new TransformScrollSpeed()); - } + private void speedTo(float value, double duration = 0, EasingTypes easing = EasingTypes.None) => TransformTo(() => speed, value, duration, easing, new TransformScrollSpeed()); private enum ScrollState {