Example #1
0
  private static void winnerForThisRound(ArrayList<FreeCellPlayer> players) {
    // temporary clear screen
    clearScreen();
    // tally throws
    System.out.println("\n[Summary]");
    for (FreeCellPlayer player : players) {
      if (!player.isWin()) {
        if (player.getThrownCard() != null) {
          System.out.println(player.getName() + ": " + player.getThrownCard().toString());
        } else {
          System.out.println(player.getName() + ": NONE");
        }
      }
    }
    delay(2000);

    Card highestCard = getHighestCard(players);

    for (FreeCellPlayer player : players) {
      if (!player.isWin()) {
        player.setOriginOfBaseCard(false);

        if (highestCard == null && player.getThrownCard() == null) {
          player.setOriginOfBaseCard(true);
          break;
        } else {
          if (highestCard.equals(player.getThrownCard())) {
            player.setOriginOfBaseCard(true);
          }
        }

        ArrayList<Card> newHand = new ArrayList<Card>();
        for (Card card : player.getHand()) {
          if (card != null) {
            newHand.add(card);
          }
        }
        player.getHand().clear();
        player.getHand().addAll(newHand);
      } /* else {
        	if (player.equals(players.get(0)) && players.get(0).isOriginOfBaseCard()) {
        		players.get(1).setOriginOfBaseCard(true);
        		break;
        	}
        }*/
    }
  }
Example #2
0
 private static void checkIfWinner(FreeCellPlayer player) {
   if (player.getHand().size() <= 0 && !player.isWin()) {
     System.out.println(player.getName() + " has no cards left.\n" + player.getName() + " wins.");
     player.setWin(true);
     player.setOriginOfBaseCard(false);
     // player.setThrownCard(null);
     delay(1000);
   }
 }