mirror of
https://github.com/osukey/osukey.git
synced 2025-05-30 01:47:30 +09:00
Move MainMenu initialisation from ctor to load
This commit is contained in:
parent
bebb635ca1
commit
e91c07209f
@ -25,7 +25,7 @@ namespace osu.Game.Screens.Menu
|
|||||||
{
|
{
|
||||||
public class MainMenu : OsuScreen
|
public class MainMenu : OsuScreen
|
||||||
{
|
{
|
||||||
private readonly ButtonSystem buttons;
|
private ButtonSystem buttons;
|
||||||
|
|
||||||
public override bool HideOverlaysOnEnter => buttons.State == ButtonSystemState.Initial;
|
public override bool HideOverlaysOnEnter => buttons.State == ButtonSystemState.Initial;
|
||||||
|
|
||||||
@ -35,26 +35,39 @@ namespace osu.Game.Screens.Menu
|
|||||||
|
|
||||||
private Screen songSelect;
|
private Screen songSelect;
|
||||||
|
|
||||||
private readonly MenuSideFlashes sideFlashes;
|
private MenuSideFlashes sideFlashes;
|
||||||
|
|
||||||
[Resolved]
|
[Resolved]
|
||||||
private GameHost host { get; set; }
|
private GameHost host { get; set; }
|
||||||
|
|
||||||
protected override BackgroundScreen CreateBackground() => new BackgroundScreenDefault();
|
protected override BackgroundScreen CreateBackground() => new BackgroundScreenDefault();
|
||||||
|
|
||||||
public MainMenu()
|
[BackgroundDependencyLoader(true)]
|
||||||
|
private void load(OsuGame game = null)
|
||||||
{
|
{
|
||||||
sideFlashes = new MenuSideFlashes();
|
if (host.CanExit)
|
||||||
|
AddInternal(new ExitConfirmOverlay { Action = this.Exit });
|
||||||
|
|
||||||
buttons = new ButtonSystem
|
AddRangeInternal(new Drawable[]
|
||||||
{
|
{
|
||||||
OnChart = delegate { this.Push(new ChartListing()); },
|
new ParallaxContainer
|
||||||
OnDirect = delegate { this.Push(new OnlineListing()); },
|
{
|
||||||
OnEdit = delegate { this.Push(new Editor()); },
|
ParallaxAmount = 0.01f,
|
||||||
OnSolo = onSolo,
|
Children = new Drawable[]
|
||||||
OnMulti = delegate { this.Push(new Multiplayer()); },
|
{
|
||||||
OnExit = this.Exit,
|
buttons = new ButtonSystem
|
||||||
};
|
{
|
||||||
|
OnChart = delegate { this.Push(new ChartListing()); },
|
||||||
|
OnDirect = delegate { this.Push(new OnlineListing()); },
|
||||||
|
OnEdit = delegate { this.Push(new Editor()); },
|
||||||
|
OnSolo = onSolo,
|
||||||
|
OnMulti = delegate { this.Push(new Multiplayer()); },
|
||||||
|
OnExit = this.Exit,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sideFlashes = new MenuSideFlashes(),
|
||||||
|
});
|
||||||
|
|
||||||
buttons.StateChanged += state =>
|
buttons.StateChanged += state =>
|
||||||
{
|
{
|
||||||
@ -69,26 +82,6 @@ namespace osu.Game.Screens.Menu
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
[BackgroundDependencyLoader(true)]
|
|
||||||
private void load(OsuGame game = null)
|
|
||||||
{
|
|
||||||
if (host.CanExit)
|
|
||||||
{
|
|
||||||
AddInternal(new ExitConfirmOverlay
|
|
||||||
{
|
|
||||||
Action = this.Exit,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
AddInternal(new ParallaxContainer
|
|
||||||
{
|
|
||||||
ParallaxAmount = 0.01f,
|
|
||||||
Child = buttons,
|
|
||||||
});
|
|
||||||
|
|
||||||
AddInternal(sideFlashes);
|
|
||||||
|
|
||||||
if (game != null)
|
if (game != null)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user