internal virtual PlayedGame TransformNewlyCompletedGameIntoPlayedGame(
SaveableGameBase savedGame,
int gamingGroupId,
string applicationUserId,
List<PlayerGameResult> playerGameResults)
{
var winnerType = WinnerTypes.PlayerWin;
if (playerGameResults.All(x => x.GameRank == 1))
{
winnerType = WinnerTypes.TeamWin;
}
else if (playerGameResults.All(x => x.GameRank > 1))
{
winnerType = WinnerTypes.TeamLoss;
}
var numberOfPlayers = savedGame.PlayerRanks.Count;
var playedGame = new PlayedGame
{
GameDefinitionId = savedGame.GameDefinitionId,
NumberOfPlayers = numberOfPlayers,
WinnerType = winnerType,
PlayerGameResults = playerGameResults,
DatePlayed = savedGame.DatePlayed,
GamingGroupId = gamingGroupId,
Notes = savedGame.Notes,
CreatedByApplicationUserId = applicationUserId
};
return playedGame;
}