Example #1
0
        //public void TryCloseAnyGamerCard()
        //{
        //    var i = DeskCards.Count;
        //    foreach (var cardDesk in DeskCards)
        //    {
        //        foreach (var card in BotHand)
        //        {
        //            if (IsClosingRight(card, cardDesk.Back))
        //            {
        //                cardDesk.Close(card);
        //                BotHand.Remove(card);
        //                i--;
        //                break;
        //            }
        //        }
        //    }

        //    if (i != 0)
        //    {
        //        foreach (var card in DeskCards)
        //        {
        //            BotHand.Add(card.Back);
        //            if (card.Fore != null)
        //                BotHand.Add(card.Fore);
        //        }
        //        Thread.Sleep(1000);
        //        DeskCards.Clear();
        //        AddCardsToGamersHands();
        //    }

        //    if (i == 0)
        //    {
        //        DeskCards.Clear();
        //        AddCardsToGamersHands();
        //        WhosTurn = Players.Bot;
        //    }
        //}

        public void CloseTurn()
        {
            if (DeskCards[0].ContainsFore)
            {
                if (WhosTurn == Players.Gamer)
                {
                    DeskCards.Clear();
                    AddCardsToGamersHands();
                    WhosTurn = Players.Bot;
                }
                else
                {
                    DeskCards.Clear();
                    AddCardsToGamersHands();
                    WhosTurn = Players.Gamer;
                }
            }
            else if (DeskCards[0].ContainsFore == false)
            {
                if (WhosTurn == Players.Gamer)
                {
                    BotHand.Add(DeskCards[0].Back);
                    DeskCards.Clear();
                    AddCardsToGamersHands();
                }
                else
                {
                    GamerHand.Add(DeskCards[0].Back);
                    DeskCards.Clear();
                    AddCardsToGamersHands();
                }
            }
        }
Example #2
0
 public void TurnPlayer2Bot(int gamerCardNumber)
 {
     DeskCards = new List <DeskCardsSlot> {
         new DeskCardsSlot(GamerHand[gamerCardNumber])
     };
     GamerHand.RemoveAt(gamerCardNumber);
 }
Example #3
0
        private void AddCardsToGamersHands()
        {
            GamerHand.Remove(null);
            BotHand.Remove(null);
            if (Deck == null)
            {
                return;
            }
            if (WhosTurn == Players.Gamer)
            {
                DoDistribute(GamerHand, BotHand);
            }

            if (WhosTurn == Players.Bot)
            {
                DoDistribute(BotHand, GamerHand);
            }
        }
Example #4
0
        public Tuple <string, string> CloseBotCard(int gamerCardNumber)
        {
            //if (CanTransferPlayer(gamerCardNumber))
            //{
            //    DoTransferPlayer(gamerCardNumber);
            //    return null;
            //}
            foreach (var cardDesk in DeskCards)
            {
                if (IsClosingRight(GamerHand[gamerCardNumber], cardDesk.Back))
                {
                    cardDesk.Close(GamerHand[gamerCardNumber]);
                    GamerHand.RemoveAt(gamerCardNumber);
                }
                else
                {
                    return(new Tuple <string, string>("Нарушение правил", "Неправильно выбрана карта"));
                }
            }

            return(null);
        }
Example #5
0
 public void DoPlayerToss(int cardNumber)
 {
     DeskCards.Add(new DeskCardsSlot(GamerHand[cardNumber]));
     GamerHand.RemoveAt(cardNumber);
 }
Example #6
0
 public void DoTransferPlayer(int gamerCardNumber)
 {
     DeskCards.Add(new DeskCardsSlot(GamerHand[gamerCardNumber]));
     GamerHand.RemoveAt(gamerCardNumber);
     // WhosTurn = Players.Bot;
 }