예제 #1
0
파일: Game1.cs 프로젝트: Tritax/EvoBlob
        /// <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()
        {
            _state = States.GameStates.Menu;
             SwitchStates(_state);

             base.Initialize();
        }
예제 #2
0
파일: Game1.cs 프로젝트: Tritax/EvoBlob
        private void SwitchStates(States.GameStates newState)
        {
            States.StateBase cur = _gameState;
             if (cur != null)
            cur.Uninit();

             switch (newState)
             {
            default:
            case States.GameStates.Quit:
               this.Exit();
               break;
            case States.GameStates.Menu:
               _gameState = new States.MenuState();
               break;
            case States.GameStates.Instruct:
               _gameState = new States.InstructState();
               break;
            case States.GameStates.InGame:
               _gameState = new States.InGame();
               break;
            case States.GameStates.About:
               _gameState = new States.AboutState();
               break;
            case States.GameStates.Win:
               _gameState = new States.WinState();
               break;
             };

             _state = newState;
             if (_gameState != null)
            _gameState.Init(this);
        }