public DiceRoll rerollDice(DiceRoll roll, int times) {

		for (int j = 0; j < times; ++j) {
			List<Integer> toFreeze = saveToFreeze(diceNr);
			try {
				roll.freeze(toFreeze);
			} catch (GameLogicException e) {
				System.out.println("GameLogicException");
			}

			roll.roll();
			for (int i = 0; i < 5; ++i) {
				diceCheckBoxes[i].setText("" + roll.getDiceValue(i));
			}
			String text = currentPlayer + " " + (j + 2) + " rzut";
			newsField.setText(text);
			mainFrame.repaint();
			synchronized (waitForClick) {
				while (!diceSaved) {
					try {
						waitForClick.wait();
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
				}
				diceSaved = false;
			}

		}
		newsField.setText(currentPlayer + " wybierz kategorie");
		mainFrame.repaint();
		return roll;
	}