/// <summary> /// Arrange/strategize cards in subsets: Flush, Three of a Kind, One Pair, High Card /// </summary> /// <param name="player"></param> public void Arrange(PokerPlayer player) { this.Copy(player); if (CheckIsFlush()) { this.Category = HandCategory.Flush; } else if (CheckIsThreeOfAKind()) { this.Category = HandCategory.ThreeOfaKind; } else if (CheckIsPair()) { this.Category = HandCategory.OnePair; } else { this.Category = HandCategory.HighCard; } //Get Score to get High Card this.Score = this.CardsOnHand.AsEnumerable().Sum(r => (int)r.Rank); }
public override void GivePlayingCards(PokerPlayer player, PlayingCard card) { player.ReceivePlayingCard(card); }
public abstract void AddPlayer(PokerPlayer player);
public abstract void GivePlayingCards(PokerPlayer player, PlayingCard card);
private void Copy(PokerPlayer player) { this.Name = player.Name; this.CardsOnHand = player.CardsOnHand; }