//button pickup clicked ends human turn and picks up cards private void btnPickUp_Click(object sender, EventArgs e) { roundNumber += 1; GameLog.LogRound(GameLog, roundNumber, myPlayerOne, myPlayerTwo, myRiver); for (int i = 0; i < myRiver.length(); i++) { myHandOne.CardToHand(myRiver.GetCard(i)); } myRiver.ClearCenter(); try { myPlayerOne.RefillHand(myDeck); myPlayerTwo.RefillHand(myDeck); } catch (Exception) { } //myPlayerOne.setIsAttacking(true); //myPlayerOne.setIsDefending(false); //myPlayerTwo.setIsAttacking(false); myPlayerTwo.setIsDefending(true); lbl_computer_attacking.Visible = false; lbl_human_attacking.Visible = true; btn_pick_up.Enabled = false; btn_cease_attack.Enabled = true; DisplayAllCardLists(); }
//on card click will raise event in card image control class //clicked card will go through player attack/defend phase method private void Card_Click(object sender, EventArgs e) { CardImageControl clickedCardControl = new CardImageControl(); clickedCardControl = (CardImageControl)sender; //if (myPlayerTwo.getIsDefending() == false) //{ // myPlayerOne.setIsDefending(true); //} //else if (myPlayerTwo.getIsDefending() == true) //{ // myPlayerOne.setIsDefending(false); //} //checks to see if computer is defending if so human player attack phas starts and computer //defend phase begins if (myPlayerTwo.getIsDefending() == true) { myPlayerOne.Attacking(myRiver, (clickedCardControl.Card)); myPlayerTwo.DefendingPhase(myRiver, myDeck.getTrumpCard()); //checks to see if computer is defending if not will log round in output file //will reset round and have human start defending if (myPlayerTwo.getIsDefending() == false) { roundNumber += 1; GameLog.LogRound(GameLog, roundNumber, myPlayerOne, myPlayerTwo, myRiver); for (int i = 0; i < myRiver.length(); i++) { myHandTwo.CardToHand(myRiver.GetCard(i)); } myRiver.ClearCenter(); lbl_computer_attacking.Visible = true; lbl_human_attacking.Visible = false; try { myPlayerOne.RefillHand(myDeck); myPlayerTwo.RefillHand(myDeck); } catch (Exception) { } btn_pick_up.Enabled = true; btn_cease_attack.Enabled = false; myPlayerTwo.Attacking(myRiver); } } //human is defending, from computer attacks else { myPlayerOne.DefendingPhase(myRiver, myDeck.getTrumpCard(), (clickedCardControl.Card)); myPlayerTwo.Attacking(myRiver); //if human no longer defending, round over and reset, computer is now defending if (myPlayerTwo.getIsDefending() == true) { roundNumber += 1; GameLog.LogRound(GameLog, roundNumber, myPlayerOne, myPlayerTwo, myRiver); for (int i = 0; i < myRiver.length(); i++) { discardDisplayList.Add(myRiver.GetCard(i)); } myRiver.ClearCenter(); lbl_computer_attacking.Visible = false; lbl_human_attacking.Visible = true; try { myPlayerOne.RefillHand(myDeck); myPlayerTwo.RefillHand(myDeck); } catch (Exception) { } btn_pick_up.Enabled = false; btn_cease_attack.Enabled = true; } } DisplayAllCardLists(); //logs who won the game and win/loss ratios if (myPlayerOne.getHand().length() == 0) { playerOneWins += 1; playerTwoLosses += 1; MessageBox.Show("GAME OVER: PLAYER ONE HAS WON"); GameLog.Log("\n*****GAME OVER: PLAYER ONE HAS WON***** \n"); GameLog.Log("\n " + userName.ToUpper() + " Win/Loss Ratio " + playerOneWins.ToString() + "/" + playerOneLosses.ToString()); GameLog.Log("\n PlayerTwo Win/Loss Ratio " + playerTwoWins.ToString() + "/" + playerTwoLosses.ToString() + "\n"); ResetGame(); } if (myPlayerTwo.getHand().length() == 0) { playerTwoWins += 1; playerOneLosses += 1; MessageBox.Show("GAME OVER: PLAYER TWO HAS WON"); GameLog.Log("\n*****GAME OVER: PLAYER TWO HAS WON***** \n"); GameLog.Log("\n " + userName.ToUpper() + " Win/Loss Ratio " + playerOneWins.ToString() + "/" + playerOneLosses.ToString()); GameLog.Log("\n PlayerTwo Win/Loss Ratio " + playerTwoWins.ToString() + "/" + playerTwoLosses.ToString() + "\n"); ResetGame(); } }