Пример #1
0
        /*
         * public void DiscardCard(Card card)
         * {
         * Hand.Remove(card);
         * if (HasWon && OnPlayerHasWon != null)
         *  OnPlayerHasWon(this, new PlayerEventArgs { Player = this, State = PlayerState.Winner });
         * if (OnCardDiscarded != null)
         *  OnCardDiscarded(this, new CardEventArgs { Card = card });
         * }
         */
        public void play(kindsOfCombination k)
        {
            kindsOfCombination result = validCards();

            if (result == null)
            {
                return;
            }
            if (!result.biggerThan(k))
            {
                return;
            }
            for (int i = 0; i < Chosen.Count; i++)
            {
                Hand.Remove(Chosen[i]);
            }
            CardEventArgs args = new CardEventArgs();

            args.Card  = new Card((Suit)1, (Rank)3);
            args.Cards = (Cards)Chosen.Clone();
            args.index = Index;
            args.CurrentCombination = result;
            OnCardPlayed(this, args);
            Chosen.Clear();
            if (HasWon && OnPlayerHasWon != null)
            {
                OnPlayerHasWon(this, new PlayerEventArgs {
                    Player = this, State = PlayerState.Winner
                });
            }
        }
Пример #2
0
 public Cards GetChosenCards()
 {
     return(Chosen.Clone() as Cards);
 }