def game_level_menu():
    game_level = GameLevel(Chance, Score)
    streak = Streak()
    level_status = 0
    max_level_status = game_level.game_level_count - 1
    run_game_level = True
    while run_game_level:
        clock.tick(FPS)
        win.blit(BACKGROUND, (0, 0))

        header_shadow = LETTER_FONT_2.render('< CHOOSE DIFFICULTY >', 1, WHITE_2)
        header_text = LETTER_FONT_2.render('< CHOOSE DIFFICULTY >', 1, WHITE)
        win.blit(header_shadow, (int(WIDTH / 2) - int(header_shadow.get_width() / 2),
                                 int(FONT_SIZE_2)))
        win.blit(header_text, (int(WIDTH / 2) - int(header_text.get_width() / 2) + 2,
                               int(FONT_SIZE_2) + 2))

        for i in range(max_level_status + 1):
            lvl_text = LETTER_FONT_2.render(game_level.game_level_list[i].get_name(), 1, WHITE_2)
            win.blit(lvl_text, (int(WIDTH / 2) - int(lvl_text.get_width() / 2),
                                int(FONT_SIZE_2) * (i + 3)))

        lvl2_text = LETTER_FONT_2.render('[ ' + game_level.game_level_list[level_status].get_name() + ' ]', 1, WHITE)
        win.blit(lvl2_text, (int(WIDTH / 2) - int(lvl2_text.get_width() / 2) + 2,
                             int(FONT_SIZE_2) * (level_status + 3) + 2))

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                quit()

            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:
                    main_menu()
                    run_game_level = False

                if event.key == pygame.K_DOWN:
                    if level_status < max_level_status:
                        level_status += 1
                    print(level_status)

                if event.key == pygame.K_UP:
                    if level_status > 0:
                        level_status -= 1
                    print(level_status)

                if event.key == pygame.K_RETURN:
                    chance = game_level.get_level_chances(level_status)
                    multiplier = game_level.get_level_multiplier(level_status)
                    game(chance, streak, multiplier)
                    run_game_level = False

        pygame.display.update()
Exemple #2
0
 def __init__(self,
              name,
              description="",
              periodicity_id=1,
              periodicity_unit="daily",
              is_active=1,
              is_favorite=0,
              is_sample=0,
              habit_id=0,
              src_habit_id=0):
     """ Initialize a new instance of the Habit class. """
     self.name = name
     self.description = description
     self.periodicity_id = periodicity_id
     self.periodicity_unit = periodicity_unit
     self.is_active = is_active
     self.is_favorite = is_favorite
     self.is_sample = is_sample
     self.habit_id = habit_id
     self.src_habit_id = src_habit_id
     self.streak = Streak(self)