mirror of
https://github.com/osukey/osukey.git
synced 2025-07-02 08:49:59 +09:00
Block window closing while intro is playing.
This commit is contained in:
@ -15,7 +15,11 @@ namespace osu.Game.GameModes.Menu
|
|||||||
class Intro : OsuGameMode
|
class Intro : OsuGameMode
|
||||||
{
|
{
|
||||||
private OsuLogo logo;
|
private OsuLogo logo;
|
||||||
private bool didLoadMenu;
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether we have loaded the menu previously.
|
||||||
|
/// </summary>
|
||||||
|
internal bool DidLoadMenu;
|
||||||
|
|
||||||
protected override BackgroundMode CreateBackground() => new BackgroundModeEmpty();
|
protected override BackgroundMode CreateBackground() => new BackgroundModeEmpty();
|
||||||
|
|
||||||
@ -54,7 +58,7 @@ namespace osu.Game.GameModes.Menu
|
|||||||
|
|
||||||
Game.Scheduler.AddDelayed(delegate
|
Game.Scheduler.AddDelayed(delegate
|
||||||
{
|
{
|
||||||
didLoadMenu = true;
|
DidLoadMenu = true;
|
||||||
Push(new MainMenu());
|
Push(new MainMenu());
|
||||||
}, 2900);
|
}, 2900);
|
||||||
|
|
||||||
@ -73,7 +77,7 @@ namespace osu.Game.GameModes.Menu
|
|||||||
protected override bool OnExiting(GameMode next)
|
protected override bool OnExiting(GameMode next)
|
||||||
{
|
{
|
||||||
//cancel exiting if we haven't loaded the menu yet.
|
//cancel exiting if we haven't loaded the menu yet.
|
||||||
return !didLoadMenu;
|
return !DidLoadMenu;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnResuming(GameMode last)
|
protected override void OnResuming(GameMode last)
|
||||||
|
@ -95,6 +95,17 @@ namespace osu.Game
|
|||||||
Host.Exit();
|
Host.Exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override bool OnExiting()
|
||||||
|
{
|
||||||
|
if (!intro.DidLoadMenu || intro.ChildGameMode != null)
|
||||||
|
{
|
||||||
|
intro.MakeCurrent();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return base.OnExiting();
|
||||||
|
}
|
||||||
|
|
||||||
private void modeAdded(GameMode newMode)
|
private void modeAdded(GameMode newMode)
|
||||||
{
|
{
|
||||||
newMode.ModePushed += modeAdded;
|
newMode.ModePushed += modeAdded;
|
||||||
|
Reference in New Issue
Block a user