maze.py 884 B

1234567891011121314151617181920212223242526272829
  1. import pygame
  2. from mazelib import Maze
  3. from mazelib.generate.Prims import Prims
  4. def generate_maze(width, height):
  5. m = Maze()
  6. m.generator = Prims(height, width)
  7. m.generate()
  8. return m.grid
  9. def get_meteor_rects(grid, cell_size=80):
  10. meteor_rects = []
  11. for y, row in enumerate(grid):
  12. for x, cell in enumerate(row):
  13. if cell == 1:
  14. rect = pygame.Rect(x * cell_size, y * cell_size, cell_size, cell_size)
  15. meteor_rects.append(rect)
  16. return meteor_rects
  17. def draw_maze(surface, grid, meteor_img, cell_size=80):
  18. scaled = pygame.transform.scale(meteor_img, (cell_size, cell_size))
  19. for y, row in enumerate(grid):
  20. for x, cell in enumerate(row):
  21. if cell == 1:
  22. rect = pygame.Rect(x * cell_size, y * cell_size, cell_size, cell_size)
  23. surface.blit(scaled, rect)