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; } }*/ } }
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); } }