Esempio n. 1
0
/*
 * Update the arrays of player money and cards to match playerList.
 *
 * If showCards is set to false, it only shows the back of cards for computer
 * players.
 */
void GameData::updatePlayers(PlayerList pList, bool showCards) {

	int pNum;
	Card card;

	Player * start = pList.peek();
	do {
		Player player = *pList.peek();
		pNum = player.getNum() - 1;
		setPlayerMoney(pNum, player.getMoney());
		if (player.isFolded()) {
			playerCards[pNum][0] = Card(0, 0);
			playerCards[pNum][1] = Card(0, 0);
		} else {
			for (int i = 0; i < 2; i++) {
				card = player.getPocket()->getCard(i);
				if (showCards || (pNum == 0) || card.isBlank())
					playerCards[pNum][i] = card;
				else
					playerCards[pNum][i] = Card(1, 1); // Show a face down card
			}
		}
	} while (pList.next() != start);
}