Exemplo n.º 1
0
def run(module):
    name = cli.welcome_user(module.SPEC_INFO)
    for turn in range(module.ROUNDS_NUMBER):
        question, right_answer = module.make_question_answer()

        guess = cli.get_answer(question)

        if not check_answer(guess, right_answer):
            cli.show_wrong_answer_message(name, guess, right_answer)
            break
        cli.show_correct_answer_message()
    else:
        cli.show_you_win_message(name)
Exemplo n.º 2
0
def run(game: ModuleType):
    """Starts the game."""
    user_name = welcome_and_acknowledge_user()
    tell_rules(game.RULE)
    for _ in range(0, ROUNDS):
        question, right_answer = game.get_round_data()
        ask_question(question)
        answer = get_answer()
        if answer == right_answer:
            print('Correct!')
        else:
            return loose(answer, right_answer, user_name)
    return congratulate(user_name)
Exemplo n.º 3
0
def run(generate_round):
    cli.show_message(GREETINGS)
    user_name = cli.ask_user_name()
    cli.show_message(generate_round.TITLE)
    right_answers = 0
    while right_answers < MIN_CORRECT_ANSWERS:
        question, true_answer = generate_round.task()
        user_answer = cli.get_answer(question)
        if user_answer != true_answer:
            cli.show_message(
                INCORRECT.format(user_answer, true_answer, user_name))
            break
        else:
            right_answers += 1
            cli.show_message(CORRECT)
            if right_answers == MIN_CORRECT_ANSWERS:
                cli.show_message(CONGRATS.format(user_name))
Exemplo n.º 4
0
def core(game):
    print('Welcome to the Brain Games!')
    print(game.RULES + '\n')
    name = cli.welcome_user()
    print(f'Hello, {name}!')
    for step in range(STEPS):
        quest, res = game.new_game()
        print(f'Question: {quest}')
        ans = cli.get_answer()
        if ans != res:
            print(f"'{ans}' is wrong answer ;(.", end='')
            print(f"Correct answer was '{res}'.")
            print(f"Let's try again, {name}!")
            return False
        else:
            print('Correct!')
    print(f'Congratulations, {name}!')
    return True
Exemplo n.º 5
0
def run(game):
    """Logic module for all games.

    Args:
        game: game module with game conditions and ruels
    """
    cli.welcome_message(game.RULES)
    username = cli.welcome_player()
    for _ in range(COUNT_OF_QUESTIONS):
        phrase, correct_answer = game.run()
        cli.ask_question(phrase)
        user_answer = cli.get_answer()
        if user_answer != correct_answer:
            cli.inform_wrong(user_answer, correct_answer, username)
            break
        cli.inform_right()
    else:
        cli.congratulate(username)
Exemplo n.º 6
0
def run(game):
    cli.welcome()
    print(game.DESCRIPTION, '\n')
    name = cli.get_name()
    cli.greet(name)
    print()
    for _ in range(3):
        q, a = game.generate_qa_pair()
        print('Question: {}'.format(q))
        answer = cli.get_answer()
        if (answer == a):
            print('Correct!')
        else:
            print("'{}' is wrong answer ;(. Correct answer was '{}'".format(
                answer, a))
            print("Let's try again, {}!".format(name))
            break
    else:
        print('Congratulations, {}!'.format(name))
Exemplo n.º 7
0
def qac(gamefuncs):
    """Question-Answer Cycle.

    Args:
        gamefuncs: see gameprocess function

    Returns:
        True if user gives correct answers of all questions,
        False if user give at least one wrong answer.
    """
    correct_answers = 0
    while correct_answers != CORRECT_ANSWERS_REQUIRED:
        question, correct_answer = gamefuncs()
        print(question)
        answer = get_answer()
        if answer == correct_answer:
            print('Correct!')
            correct_answers += 1
        else:
            print("'{0}' is wrong answer ;(. Correct answer was '{1}'".format(
                answer, correct_answer))
            return False
    return True