Exemple #1
0
 private static void AddInactivePlayerSuffix(PlayerWithNemesis playerWithNemesis)
 {
     if (!playerWithNemesis.PlayerActive)
     {
         playerWithNemesis.PlayerName += " (INACTIVE)";
     }
 }
Exemple #2
0
 private static void ValidatePlayerNotNull(PlayerWithNemesis player)
 {
     if (player == null)
     {
         throw new ArgumentNullException("player");
     }
 }
Exemple #3
0
        public void SetUp()
        {
            builder = new PlayerWithNemesisViewModelBuilder();
            this.playerWithNemesis = new PlayerWithNemesis
            {
                PlayerId                  = 100,
                PlayerRegistered          = true,
                PlayerName                = "player name",
                PlayerActive              = true,
                NemesisPlayerId           = 300,
                NemesisPlayerName         = "nemesis player name",
                PreviousNemesisPlayerId   = 400,
                PreviousNemesisPlayerName = "previous nemesis player name",
                GamingGroupId             = gamingGroupId,
                GamesLost                 = 1,
                GamesWon                  = 1,
                TotalPoints               = 10,
                TotalChampionedGames      = 1
            };

            currentUser = new ApplicationUser
            {
                CurrentGamingGroupId = gamingGroupId
            };
        }
Exemple #4
0
        public PlayerWithNemesisViewModel Build(PlayerWithNemesis playerWithNemesis, ApplicationUser currentUser)
        {
            ValidatePlayerNotNull(playerWithNemesis);

            AddInactivePlayerSuffix(playerWithNemesis);

            PlayerWithNemesisViewModel model = new PlayerWithNemesisViewModel
            {
                PlayerId                  = playerWithNemesis.PlayerId,
                PlayerName                = playerWithNemesis.PlayerName,
                PlayerActive              = playerWithNemesis.PlayerActive,
                PlayerRegistered          = playerWithNemesis.PlayerRegistered,
                UserCanEdit               = (currentUser != null && playerWithNemesis.GamingGroupId == currentUser.CurrentGamingGroupId),
                NemesisPlayerId           = playerWithNemesis.NemesisPlayerId,
                NemesisPlayerName         = playerWithNemesis.NemesisPlayerName,
                PreviousNemesisPlayerId   = playerWithNemesis.PreviousNemesisPlayerId,
                PreviousNemesisPlayerName = playerWithNemesis.PreviousNemesisPlayerName,
                NumberOfPlayedGames       = playerWithNemesis.GamesLost + playerWithNemesis.GamesWon,
                OverallWinPercentage      = WinPercentageCalculator.CalculateWinPercentage(playerWithNemesis.GamesWon, playerWithNemesis.GamesLost),
                TotalPoints               = playerWithNemesis.TotalPoints,
                TotalChampionedGames      = playerWithNemesis.TotalChampionedGames
            };

            return(model);
        }
        public PlayerWithNemesisViewModel Build(PlayerWithNemesis playerWithNemesis, string email,
                                                ApplicationUser currentUser)
        {
            ValidatePlayerNotNull(playerWithNemesis);

            AddInactivePlayerSuffix(playerWithNemesis);

            var totalGamesPlayed = playerWithNemesis.GamesLost + playerWithNemesis.GamesWon;
            var model            = new PlayerWithNemesisViewModel
            {
                PlayerId                   = playerWithNemesis.PlayerId,
                PlayerName                 = playerWithNemesis.PlayerName,
                PlayerActive               = playerWithNemesis.PlayerActive,
                PlayerRegistered           = playerWithNemesis.PlayerRegistered,
                RegisteredUserEmailAddress = email,
                UserCanEdit                = (currentUser != null && playerWithNemesis.GamingGroupId == currentUser.CurrentGamingGroupId),
                NemesisPlayerId            = playerWithNemesis.NemesisPlayerId,
                NemesisPlayerName          = playerWithNemesis.NemesisPlayerName,
                PreviousNemesisPlayerId    = playerWithNemesis.PreviousNemesisPlayerId,
                PreviousNemesisPlayerName  = playerWithNemesis.PreviousNemesisPlayerName,
                NumberOfPlayedGames        = totalGamesPlayed,
                OverallWinPercentage       = WinPercentageCalculator.CalculateWinPercentage(playerWithNemesis.GamesWon, playerWithNemesis.GamesLost),
                NemePointsSummary          = new NemePointsSummaryViewModel(playerWithNemesis.NemePointsSummary),
                TotalChampionedGames       = playerWithNemesis.TotalChampionedGames,
                AveragePointsPerGame       = totalGamesPlayed > 0 ? (float)playerWithNemesis.NemePointsSummary.TotalPoints / (float)totalGamesPlayed : 0,
                AchievementsPerLevel       = playerWithNemesis.AchievementsPerLevel
            };

            return(model);
        }