protected void buy(Player player, Game game) {
		Integer gold = player.getGold();
		for (CardsToBuy couple : buyOrder) {
			if (couple.numberToBuy > 0 && couple.card.getCost() <= gold) {
				try {
					game.buy(couple.card, player);
					couple.numberToBuy--;
					break;
				} catch (BuyException e) {
					logger.error("BuyException of type " + e.getClass()
							+ " for card " + e.card);
				}
			}
		}
	}