public DiceRoll rerollDice(DiceRoll roll, int times) {
		for (int i = 0; i < times; i++) {
			boolean done = false;
			System.out.print("Choose dice you want to freeze: ");
			while (!done) {
				try {
					String choice = scanner.nextLine().toLowerCase().trim();
					if (choice.equals("")) {
						done = true;
						roll.roll();
						break;
					}
					List<Integer> c = new ArrayList<Integer>();
					for (String s : choice.split(",| ")) {
						c.add(Integer.parseInt(s.trim()));
					}
					roll.freeze(c);
					roll.roll();
					done = true;
				} catch (GameLogicException e) {
					System.out
							.print("Invalid dice given! Choose again, and check your choice twice before accepting: ");
					done = false;
				} catch (NumberFormatException e) {
					System.out
							.print("Invalid dice given! Choose again, and check your choice twice before accepting: ");
					done = false;
				}
			}
			System.out.println("Your roll: " + roll.toString());
		}
		return roll;

	}