//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(); } } }
public void CloseGamerCard() { foreach (var card in BotHand) { if (!IsClosingRight(card, DeskCards[0].Back)) { continue; } DeskCards[0].Close(card); BotHand.Remove(card); break; } }
public void DoTransferBot() { var cardForTransfer = DeskCards.Last().Back; foreach (var card in BotHand) { if (card.Rank == cardForTransfer.Rank) { DeskCards.Add(new DeskCardsSlot(card)); BotHand.Remove(card); WhosTurn = Players.Bot; break; } } }
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); } }
public void DoTossBot() { foreach (var cardDesk in DeskCards) { foreach (var cardBot in BotHand) { if (cardDesk.Fore.Rank == cardBot.Rank || cardDesk.Back.Rank == cardBot.Rank) { if (DeskCards.Count < 5) { DeskCards.Add(new DeskCardsSlot(cardBot)); BotHand.Remove(cardBot); break; } } } } }
public Tuple <string, string> TurnBot2Player() { var cardFound = false; foreach (var card in BotHand) { if (card.Suit == TrumpCard.Suit) { continue; } DeskCards = new List <DeskCardsSlot> { new DeskCardsSlot(card) }; BotHand.Remove(card); cardFound = true; break; } if (!cardFound) { DeskCards.Add(new DeskCardsSlot(BotHand[0])); BotHand.RemoveAt(0); } var IsGamerCanClose = false; foreach (var card in GamerHand) { if (!IsClosingRight(card, DeskCards[0].Back)) { continue; } IsGamerCanClose = true; break; } return(IsGamerCanClose ? null : new Tuple <string, string>("Упс", "Вам нечем покрыть карту противника")); }