1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 15:07:44 +08:00

Proxy screen transition events to subscreens in multiplayer

This commit is contained in:
Bartłomiej Dach 2020-12-24 15:07:03 +01:00
parent 3d28a0ccef
commit a97681a5da

View File

@ -202,6 +202,11 @@ namespace osu.Game.Screens.Multi
{
this.FadeIn();
waves.Show();
if (loungeSubScreen.IsCurrentScreen())
loungeSubScreen.OnEntering(last);
else
loungeSubScreen.MakeCurrent();
}
public override void OnResuming(IScreen last)
@ -209,6 +214,7 @@ namespace osu.Game.Screens.Multi
this.FadeIn(250);
this.ScaleTo(1, 250, Easing.OutSine);
screenStack.CurrentScreen?.OnResuming(last);
base.OnResuming(last);
UpdatePollingRate(isIdle.Value);
@ -219,6 +225,8 @@ namespace osu.Game.Screens.Multi
this.ScaleTo(1.1f, 250, Easing.InSine);
this.FadeOut(250);
screenStack.CurrentScreen?.OnSuspending(next);
UpdatePollingRate(isIdle.Value);
}
@ -230,9 +238,7 @@ namespace osu.Game.Screens.Multi
this.Delay(WaveContainer.DISAPPEAR_DURATION).FadeOut();
if (screenStack.CurrentScreen != null)
loungeSubScreen.MakeCurrent();
screenStack.CurrentScreen?.OnExiting(next);
base.OnExiting(next);
return false;
}