public GameViewModel(Game game, Player player) { Log = game.Log.Contents; Version = game.Version; PopulateActivityRelated(game, player); Bank = game.Bank.Piles .Select(p => new CardPileViewModel(p, game.CurrentTurn, player)).ToArray(); Hand = player.Hand .Select(c => new CardViewModel(c, game.CurrentTurn, player)).ToArray(); if (game.IsComplete) { InPlay = player.PlayArea .Select(c => new CardViewModel(c)).ToArray(); } else { InPlay = game.ActivePlayer.PlayArea .Select(c => new CardViewModel(c)).ToArray(); } Status = new TurnContextViewModel(game.CurrentTurn, player); Deck = new DeckViewModel(player.Deck); Discards = new DiscardPileViewModel(player.Discards); }
public GameViewModel(Game game, Player player) { Log = game.Log.Contents; Version = game.Version; PopulateActivityRelated(game, player); Bank = game.Bank.Piles .Select(p => new CardPileViewModel(p, game.CurrentTurn, player)).ToArray(); Hand = player.Hand .Select(c => new CardViewModel(c, game.CurrentTurn, player)).ToArray(); if (game.IsComplete) { InPlay = player.PlayArea .Select(c => new CardViewModel(c)).ToArray(); } else { InPlay = game.ActivePlayer.PlayArea .Select(c => new CardViewModel(c)).ToArray(); } Status = new TurnContextViewModel(game.CurrentTurn, player); Deck = new DeckViewModel(player.Deck); Discards = new DiscardPileViewModel(player.Discards); if (Status.GameIsComplete) { Results = new GameResultsViewModel(game.Scores); } }