コード例 #1
0
ファイル: Simulation.cs プロジェクト: vladdou/Dominion
        private void WriteSummaryToFile(ResultsSummary summary)
        {
            var builder = new StringBuilder();

            foreach (var gameResult in summary.Results)
            {
                builder.AppendFormat("{0} Win %: {1} Total Score: {2}", gameResult.PlayerName, gameResult.WinPercentage,
                                     gameResult.TotalScore)
                .AppendLine();
            }

            File.WriteAllText(Path.Combine(Name, "summary.txt"), builder.ToString());
        }
コード例 #2
0
ファイル: Simulation.cs プロジェクト: vladdou/Dominion
        private ResultsSummary CreateSummary()
        {
            List <GameResultsViewModel> resultsCopy;

            lock (_results)
                resultsCopy = _results.Where(r => r != null).ToList();

            var summary = new ResultsSummary();

            foreach (var kvp in Players)
            {
                string player        = kvp.Key;
                var    winPercentage = ((decimal)resultsCopy.Count(x => x.Winner == player) / resultsCopy.Count()) * 100.0m;
                var    totalScore    = resultsCopy.Sum(x => x.Scores.Single(p => p.PlayerName == player).Score);
                summary.AddResult(player, winPercentage, totalScore);
            }

            summary.CompletedGameCount = resultsCopy.Count();

            return(summary);
        }
コード例 #3
0
ファイル: Simulation.cs プロジェクト: razzielx/Dominion
        private void WriteSummaryToFile(ResultsSummary summary)
        {
            var builder = new StringBuilder();
            foreach (var gameResult in summary.Results)
            {
                builder.AppendFormat("{0} Win %: {1} Total Score: {2}", gameResult.PlayerName, gameResult.WinPercentage,
                                     gameResult.TotalScore)
                    .AppendLine();
            }

            File.WriteAllText(Path.Combine(Name, "summary.txt"), builder.ToString());
        }
コード例 #4
0
ファイル: Simulation.cs プロジェクト: razzielx/Dominion
        private ResultsSummary CreateSummary()
        {
            List<GameResultsViewModel> resultsCopy;
            lock (_results)
                resultsCopy = _results.Where(r => r != null).ToList();

            var summary = new ResultsSummary();
            foreach (var kvp in Players)
            {
                string player = kvp.Key;
                var winPercentage = ((decimal)resultsCopy.Count(x => x.Winner == player) / resultsCopy.Count()) * 100.0m;
                var totalScore = resultsCopy.Sum(x => x.Scores.Single(p => p.PlayerName == player).Score);
                summary.AddResult(player, winPercentage, totalScore);
            }
            
            summary.CompletedGameCount = resultsCopy.Count();
            
            return summary;
        }