} // end dealButton_Click /// <summary> /// Performs the CPU's turn then passes back to the player /// </summary> private void CpuGo() { RefreshTheFormThenPause(); Card discard = Crazy_Eights_Game.CurrentDiscard(); Suit discardSuit = discard.GetSuit(); // check for player selected crazy eight suit if (discard.GetFaceValue() == FaceValue.Eight) { discardSuit = eightsuit; } // end if // reset the discard suit for players next turn if the CPU played something if (Crazy_Eights_Game.ComputerTurn(discardSuit)) { eightsuit = Crazy_Eights_Game.CurrentDiscard().GetSuit(); discardSuit = Crazy_Eights_Game.CurrentDiscard().GetSuit(); } // end if // check for tied game if (Crazy_Eights_Game.MaxHand(1) && Crazy_Eights_Game.MaxHand(0) && !Crazy_Eights_Game.PlayerHasMove(discardSuit)) { MessageBox.Show("Neither player can play, game is a tie!", "Game Over"); this.Close(); } // end if DisplayGuiHand(Crazy_Eights_Game.GetHand(0), cTableLayoutPanel, 0); DisplayDiscardPile(); // Checks for empty hand after turn if (Crazy_Eights_Game.EmptyHand(0) && !Crazy_Eights_Game.EmptyHand(1)) { MessageBox.Show("Computer Wins!", "Game Over"); this.Close(); } // end if // Pass back to player if (!Crazy_Eights_Game.PlayerHasMove(discardSuit)) { dealButton.Enabled = true; } // end if } // end CpuGo