Не получается решить загадку на Java с вариантами ответов и подсказкой

В задаче следующая загадка:

У пользователя есть 3 попытки, чтобы отгадать загадку.

  1. Если пользователь ввел верный ответ, вывести: “Правильно!” и завершить работу.

  2. Если пользователь ввел неверный ответ на 1 или 2 попытке, вывести “Подумай еще!” и еще раз запросить ответ у пользователя.

  3. Если пользователь сделал 3 неправильных попытки, вывести “Обидно, приходи в другой раз” и завершить работу.

  4. Также пользователь имеет право на подсказку при первой попытке, при этом 2 и 3 попытки уже недоступны. Если на первой попытке он введет строку “Подсказка”, вывести любую подсказку. Если на 2 и 3, вывести “Подсказка уже недоступна”.

  5. Если пользователь, использовавший подсказку, ошибется, вывести “Обидно, приходи в другой раз” и завершить работу.

Не понимаю, как написать в коде так, чтобы после вывода подсказки, 2 и 3 попытка стали бы недоступны. Помогите пожалуйста. Думал, что нужно указать булево выражение для использованной подсказки, но не понимаю, как правильно ее применить.

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
    System.out.println("Отгадайте загадку.Сидит дед, во сто шуб одет, кто его раздевает, тот слезы проливает");
    Scanner inputAnswer = new Scanner(System.in);
    String answer = null;
    String advice1;
    Boolean answer1;
    Boolean answer2;
    Boolean answer3;
    String advice = "Подсказка: Заразная упакованная гадость";
    for (int i = 1; i <= 3; i++) {
        answer = inputAnswer.nextLine();
        answer1 = answer.equalsIgnoreCase("Zip virus");
        answer2 = answer.equalsIgnoreCase("Advice");
        if (answer1 == true) {
            System.out.println("Правильно!");
            break;
        }
        if (answer2 == true) {
            System.out.println(advice);
        }
        if (answer1==false) {
            System.out.println("Подумай еще");
            continue;
        }

         if (answer1 ==false & answer2 == true) ;
        {
            System.out.println("Обидно, приходи в другой раз");
            break;
        }


    }


}

Ответы (2 шт):

Автор решения: Эникейщик
if (answer2 == true) {
   System.out.println(advice);
   i = 3;
}
→ Ссылка
Автор решения: Alexey Zhigimont
import java.util.Scanner;

public class main {
    public static void main(String[] args) {

        System.out.println("Отгадайте загадку. Сидит дед, во сто шуб одет, кто его раздевает, тот слезы проливает");
        Scanner inputAnswer = new Scanner(System.in);
        String answer;
        boolean attempt;
        int count = 0;
        String advice = "Подсказка: Заразная упакованная гадость";


        while (count<3) {
            answer = inputAnswer.nextLine();
            attempt = answer.equalsIgnoreCase("Zip virus");
            if (answer.equalsIgnoreCase("Advice")) {
                System.out.println(advice);
                count = 2;
                System.out.println(count);
            }else if (attempt) {
                System.out.println("Правильно!");
                break;
            } else if (count<2){
                System.out.println("Подумай еще");
                count++;
            }else{
                System.out.println("Обидно, приходи в другой раз");
                break;
            }
        }
    }

}
→ Ссылка