public Game1() { GameState = State.Start; graphics = new GraphicsDeviceManager(this); graphics.PreferredBackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; //Content = new Arands.Content.ContentTracker(this.Services); //((Arands.Content.ContentTracker)Content).UseSourceAssets = true; Content.RootDirectory = "Content"; _activeScreen = null; _inactiveScreens = new List<GameScreen>(); }
protected void SwitchToGameScreen(GameScreen to) { Debug.Assert(to != null); _inactiveScreens.Add(_activeScreen); _activeScreen = to; _inactiveScreens.Remove(to); }
protected void InitialiseGameScreens() { _pauseScreen = new PauseScreen(this); _gameOverScreen = new GameOverScreen(this); _startScreen = new StartScreen(this); WaitCallback loadGameCallback = new WaitCallback(LoadMainGameScreen); ThreadPool.QueueUserWorkItem(loadGameCallback); _activeScreen = _startScreen; _inactiveScreens.Add(_pauseScreen); _inactiveScreens.Add(_gameOverScreen); }