/// <summary> /// Allows the game to perform any initialization it needs to before starting to run. /// This is where it can query for any required services and load any non-graphic /// related content. Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { base.Initialize(); // Set screen defaults. graphics.PreferredBackBufferWidth = Options.Resolutions.X; graphics.PreferredBackBufferHeight = Options.Resolutions.Y; graphics.ApplyChanges(); // Set global GraphicsDeviceManager and ContentManager. Globals.graphics = graphics; Globals.content = Content; Globals.randGen = new System.Random(); Globals.game = this; Globals.pathToCurrentMap = null; Globals.songPaused = false; IsMouseVisible = true; sceneManager = new SceneManager(); sceneManager.RegisterScene("Background", new StarsScene()); sceneManager.RegisterScene("Main Menu", new MainMenuScene()); sceneManager.RegisterScene("Song Select", new SongScene()); sceneManager.RegisterScene("Game Options", new OptionsScene()); sceneManager.RegisterScene("Exit", new ExitScene()); sceneManager.RegisterScene("Level", new LevelScene()); var userInfo = new UserInfoLoader(); if (userInfo.hasInfo) { userInfo.Load(); sceneManager.AddCurrentScene("Background"); sceneManager.AddCurrentScene("Main Menu"); sceneManager.FocusOn("Main Menu"); } else { sceneManager.RegisterScene("Init", new InitialScene()); sceneManager.AddCurrentScene("Init"); sceneManager.FocusOn("Init"); } }