def find_end(log, filename, delay):
    """ Do not change this function """

    global thread_count

    # create a Screen Object that will contain all of the drawing commands
    screen = Screen(SCREEN_SIZE, SCREEN_SIZE)
    screen.background((255, 255, 0))

    maze = Maze(screen, SCREEN_SIZE, SCREEN_SIZE, filename, delay=delay)

    solve_find_end(maze)

    log.write(f'Number of drawing commands = {screen.get_command_count()}')
    log.write(f'Number of threads created  = {thread_count}')

    done = False
    speed = 1
    while not done:
        if screen.play_commands(speed):
            key = cv2.waitKey(0)
            if key == ord('+'):
                speed = max(0, speed - 1)
            elif key == ord('-'):
                speed += 1
            elif key != ord('p'):
                done = True
        else:
            done = True
def get_path(log, filename):
    """ Do not change this function """

    # create a Screen Object that will contain all of the drawing commands
    screen = Screen(SCREEN_SIZE, SCREEN_SIZE)
    screen.background((255, 255, 0))

    maze = Maze(screen, SCREEN_SIZE, SCREEN_SIZE, filename)

    path = solve_path(maze)

    log.write(f'Number of drawing commands for = {screen.get_command_count()}')

    done = False
    speed = 1
    while not done:
        if screen.play_commands(speed):
            key = cv2.waitKey(0)
            if key == ord('+'):
                speed = max(0, speed - 1)
            elif key == ord('-'):
                speed += 1
            elif key != ord('p'):
                done = True
        else:
            done = True

    return path
Esempio n. 3
0
def main():
    pg.init()
    run = True
    screen = Screen(WIDTH, HEIGHT, TILES_SIZE)
    clock = pg.time.Clock()

    pg.display.set_caption("Adledofeu")
    pg.display.set_icon(pg.image.load(os.path.join("res","ico.png")))
    background = pg.Surface([WIDTH, HEIGHT])
    background.fill((135,206,235))

    screen.background = background

    screen.blit(background, (0,0))


    map = map_from_file(os.path.join("niveaux", "lvl4.csv"), tile_size=TILES_SIZE)

    screen.set_size_tile(map.width_tile, map.height_tile)


    #Boucle du jeu
    while run:
        dt = clock.tick(FPS_MAX) / 1000 # connait le delta time entre les iterations
        fps = round(dt*(FPS_MAX**2),2) # connait les fps

        for event in pg.event.get(): # Recupere les events
            if event.type == pg.QUIT: # Ferme le jeu quand on quitte
                run = False
            if event.type == pg.MOUSEBUTTONDOWN:
                pass

        pg.display.set_caption(str(round(map.countdown, 3)))
        # pg.display.set_caption(str(fps))

        #update
        map.update(screen, dt)

        #draw
        # pg.display.update(map.draw(screen))
        screen.blit(background, (0,0))
        map.draw(screen, dt)
        # screen.draw_grid()
        if map.countdown < 0:
            run = False

        #update screen
        pg.display.flip()


    # Boucle de
    screen.blit(background, (0,0))
    is_in_menu = True
    new_game_wanted = False
    play_again = Button("Rejouer")
    play_again.move_to(200,200)
    play_again.change_action(replay)
    quit_game = Button("Quitter")
    quit_game.change_action(do_not_replay)
    quit_game.move_to(100,100)
    while is_in_menu:
        play_again.draw(screen.surface)
        quit_game.draw(screen.surface)
        pg.display.flip()
        for event in pg.event.get(): # Recupere les events
            if event.type == pg.QUIT: # Ferme le jeu quand on quitte
                is_in_menu = False
            if event.type == pg.MOUSEBUTTONDOWN:
                mouse_pos = pg.mouse.get_pos()
                if(play_again.is_pos_in(mouse_pos)):
                    is_in_menu,new_game_wanted = play_again.get_pressed()
                if(quit_game.is_pos_in(mouse_pos)):
                    is_in_menu,new_game_wanted = quit_game.get_pressed()


    pg.quit() #quit le module pygame

    print(f"Ton score était {map.score}")