Ejemplo n.º 1
0
        private void _syncAllCallbackUI(bool requestOk, SyncAllResponse res)
        {
            puzzlesListBox.IsEnabled = true;
            buttonSyncAll.Click     += buttonSyncAll_Click;
            buttonSyncAll.Style      = (Style)Resources["ScoresSyncButtonStyle"];

            if (!requestOk)
            {
                Canvas.SetZIndex(syncErrorDialog, 3);
                syncErrorDialog.Visibility = Visibility.Visible;
                return;
            }

            int count = res.bestResults.Length;

            for (int i = 0; i < count; ++i)
            {
                PuzzleViewInfo curPVI    = (PuzzleViewInfo)puzzlesListBox.Items[i];
                Puzzle         curPuzzle = puzzleAdapter.puzzleDic[res.bestResults[i].puzzleid];
                curPuzzle.easyp          = res.bestResults[i].placeeasy;
                curPuzzle.mediump        = res.bestResults[i].placemedium;
                curPuzzle.hardp          = res.bestResults[i].placehard;
                curPuzzle.expertp        = res.bestResults[i].placeexpert;
                curPuzzle.moveseasyb     = res.bestResults[i].moveseasy;
                curPuzzle.movesmediumb   = res.bestResults[i].movesmedium;
                curPuzzle.moveshardb     = res.bestResults[i].moveshard;
                curPuzzle.movesexpertb   = res.bestResults[i].movesexpert;
                curPuzzle.timeeasyb      = res.bestResults[i].timeeasy;
                curPuzzle.timemediumb    = res.bestResults[i].timemedium;
                curPuzzle.timehardb      = res.bestResults[i].timehard;
                curPuzzle.timeexpertb    = res.bestResults[i].timeexpert;
                curPuzzle.userlisteasy   = res.bestResults[i].userlisteasy;
                curPuzzle.userlistmedium = res.bestResults[i].userlistmedium;
                curPuzzle.userlisthard   = res.bestResults[i].userlisthard;
                curPuzzle.userlistexpert = res.bestResults[i].userlistexpert;

                curPVI.update(curPuzzle);
            }
            puzzlesListBox.Visibility = Visibility.Visible;
            puzzleAdapter.saveScores();
        }
Ejemplo n.º 2
0
        public void puzzleAssembled()
        {
            assembled = true;
            switch (diff)
            {
            case Difficulty.EASY:
                prevTime  = puzzle.timeeasy;
                prevMoves = puzzle.moveseasy;
                break;

            case Difficulty.MEDIUM:
                prevTime  = puzzle.timemedium;
                prevMoves = puzzle.movesmedium;
                break;

            case Difficulty.HARD:
                prevTime  = puzzle.timehard;
                prevMoves = puzzle.moveshard;
                break;

            case Difficulty.EXPERT:
                prevTime  = puzzle.timeexpert;
                prevMoves = puzzle.movesexpert;
                break;
            }

            bool betterScore = (imoves < prevMoves) || (imoves == prevMoves && itime < prevTime) || (prevMoves == 0 && prevTime == 0);

            if (betterScore)
            {
                beterScoreText.Text = " Better score achieved!";
            }
            else
            {
                beterScoreText.Text = " ";
            }

            res1.Text = " Time: " + time + "; Moves: " + moves;
            res2.Text = " Time: " + Utils.formatTime(prevTime) + "; Moves: " + prevMoves;

            if (betterScore)
            {
                switch (diff)
                {
                case Difficulty.EASY:
                    puzzle.timeeasy  = itime;
                    puzzle.moveseasy = imoves;
                    break;

                case Difficulty.MEDIUM:
                    puzzle.timemedium  = itime;
                    puzzle.movesmedium = imoves;
                    break;

                case Difficulty.HARD:
                    puzzle.timehard  = itime;
                    puzzle.moveshard = imoves;
                    break;

                case Difficulty.EXPERT:
                    puzzle.timeexpert  = itime;
                    puzzle.movesexpert = imoves;
                    break;
                }

                puzzleAdapter.saveScores();
            }

            nextPuzzleOpened = (puzzleAdapter.selectedPuzzle == puzzleAdapter.puzzle[puzzleAdapter.openedPuzzles - 1].id) && puzzleAdapter.openNewPuzzle();
            if (nextPuzzleOpened)
            {
                puzzleAdapter.saveSettings();
                nextPuzzleOpened            = true;
                buttonNextPuzzle.Visibility = Visibility.Visible;
            }
            scorePanel.Visibility   = Visibility.Visible;
            buttonUpload.Visibility = Visibility.Visible;
            buttonPause.Visibility  = Visibility.Collapsed;

            uploaded = false;
        }