SaveGameSession() public method

public SaveGameSession ( GameSessionHistory score ) : void
score GameSessionHistory
return void
        public void MinGamesRecord()
        {
            PlayerHistory history;

            GameSessionHistory game = new GameSessionHistory ();
            game.GamesPlayed = Preferences.Get <int> (Preferences.MinPlayedGamesKey);

            history = new PlayerHistory ();
            history.ConfigPath = ".";
            history.Clean ();

            for (int i = 0; i < PlayerPersonalRecord.MIN_GAMES_RECORD - 2; i++)
            {
                history.SaveGameSession (game);
            }

            game.LogicScore = 10;
            history.SaveGameSession (game);

            Assert.AreEqual (0, history.GetLastGameRecords ().Count,
                "Did not reach MinPlayedGamesKey, the game should not be a person record yet");

            game.LogicScore = 30;
            history.SaveGameSession (game);

            Assert.AreEqual (1, history.GetLastGameRecords ().Count,
                "We have just recorded a personal record");

            game.LogicScore = 20;
            history.SaveGameSession (game);

            Assert.AreEqual (0, history.GetLastGameRecords ().Count,
                "Score saved was lower than previous, no record");
        }
示例#2
0
        public void MinGamesNotReached()
        {
            PlayerHistory history = new PlayerHistory () { ConfigPath = "." };
            GameSessionHistory game = new GameSessionHistory () { GamesPlayed = Preferences.Get <int> (Preferences.MinPlayedGamesKey) };

            history.Clean ();
            for (int i = 0; i < PlayerPersonalRecord.MIN_GAMES_RECORD - 2; i++)
            {
                history.SaveGameSession (game);
            }

            game.LogicScore = 10;
            history.SaveGameSession (game);

            Assert.AreEqual (0, history.GetLastGameRecords ().Count,
                "Did not reach MinPlayedGamesKey, the game should not be a personal record yet");
        }
示例#3
0
        public void PersonalRecordDone()
        {
            PlayerHistory history = new PlayerHistory () { ConfigPath = "." };
            GameSessionHistory game = new GameSessionHistory () { GamesPlayed = Preferences.Get <int> (Preferences.MinPlayedGamesKey) };

            history.Clean ();
            for (int i = 0; i < PlayerPersonalRecord.MIN_GAMES_RECORD - 1; i++)
            {
                history.SaveGameSession (game);
            }

            game.LogicScore = 20;
            history.SaveGameSession (game);

            game.LogicScore = 30;
            history.SaveGameSession (game);

            Assert.AreEqual (1, history.GetLastGameRecords ().Count, "We have just recorded a personal record");
        }
示例#4
0
        public void End()
        {
            // Making a deep copy of GameSessionHistory type (base class) for serialization
            player_history.SaveGameSession(history.Copy());

            if (CurrentGame != null)
            {
                CurrentGame.DrawRequest     -= GameDrawRequest;
                CurrentGame.UpdateUIElement -= GameUpdateUIElement;
                CurrentGame.Finish();
            }

            EnableTimer = false;
            timer.SynchronizingObject = null;

            paused      = false;
            CurrentGame = null;
            Status      = SessionStatus.Finished;
        }
示例#5
0
        public void PersonalRecordDoneButPreviousWas0()
        {
            PlayerHistory history = new PlayerHistory () { ConfigPath = "." };
            GameSessionHistory game = new GameSessionHistory () { GamesPlayed = Preferences.Get <int> (Preferences.MinPlayedGamesKey) };

            history.Clean ();
            for (int i = 0; i < PlayerPersonalRecord.MIN_GAMES_RECORD; i++)
            {
                history.SaveGameSession (game);
            }

            game.LogicScore = 30;
            history.SaveGameSession (game);

            Assert.AreEqual (0, history.GetLastGameRecords ().Count, "No record since previous was 0");
        }
示例#6
0
        public void ScoreLowerThanPrevious()
        {
            PlayerHistory history = new PlayerHistory () { ConfigPath = "." };
            GameSessionHistory game = new GameSessionHistory () { GamesPlayed = Preferences.Get <int> (Preferences.MinPlayedGamesKey) };

            history.Clean ();
            for (int i = 0; i < PlayerPersonalRecord.MIN_GAMES_RECORD - 1; i++)
            {
                history.SaveGameSession (game);
            }

            game.LogicScore = 30;
            history.SaveGameSession (game);

            game.LogicScore = 20;
            history.SaveGameSession (game);

            Assert.AreEqual (0, history.GetLastGameRecords ().Count, "Score saved was lower than previous, no record");
        }