コード例 #1
0
        private void GameBoardInit()
        {
            PrepareGameBoard(GAME_BOARD_SIZE);            // prepare empty gameboard
            GameBoard.gameBoardGrid = GetGameBoardGrid(); // make reference on gameboard grid in GameBoard class
            switch (LocalDataStorage.GetGameState())
            {
            // continue game
            case GameBoard.GameState.InProgress:
            case GameBoard.GameState.Paused:
                GameBoard.AddTiles(LocalDataStorage.GetTileMatrix());     // get tile's matrix from local storage
                break;

            // start new game
            default:
                LocalDataStorage.ClearSaveFileBeforeNewGame();
                GameBoard.AddTiles(STARTUP_TILE_COUNT);     // randomly add specified number of tiles on gameboard
                GameBoard.SetGameStateNewGame();
                break;
            }
            GameBoard.SetGameStateInProgress();                                                                   // change game state on "InProgress"

            GamePageViewModel.InitMoveCommandsInWindow();                                                         // add move commands

            GetGamePageResourceDictionary()["BestScore"]    = GameBoard.ScoreFormat(GameBoard.GetBestScore());    // fulfill best score
            GetGamePageResourceDictionary()["CurrentScore"] = GameBoard.ScoreFormat(GameBoard.GetCurrentScore()); // fulfill current score
            LocalDataStorage.RefreshSaveFileXML();
        }