troll 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/usr/bin/env python
  2. import pygame
  3. from tileset import Tileset
  4. from character import Character
  5. pygame.init()
  6. screen = pygame.display.set_mode((800, 800))
  7. tileset = Tileset(screen)
  8. tileset.load_level()
  9. character = Character(tileset.tilesize)
  10. clock = pygame.time.Clock()
  11. black = (0, 0, 0)
  12. keys = {
  13. pygame.K_LEFT: False,
  14. pygame.K_RIGHT: False,
  15. pygame.K_UP: False,
  16. pygame.K_DOWN: False,
  17. }
  18. def handle_events(events):
  19. for event in events:
  20. if event.type == pygame.KEYDOWN:
  21. if event.key in keys.iterkeys():
  22. keys[event.key] = True
  23. elif event.key == pygame.K_ESCAPE:
  24. return True
  25. elif event.type == pygame.KEYUP:
  26. if event.key in keys.iterkeys():
  27. keys[event.key] = False
  28. elif event.type == pygame.QUIT:
  29. return True
  30. direction = Tileset.RIGHT
  31. while True:
  32. clock.tick(60)
  33. if handle_events(pygame.event.get()):
  34. pygame.quit()
  35. break
  36. new_direction = character.frame(keys)
  37. if new_direction is not None:
  38. direction = new_direction
  39. screen.fill(black)
  40. tileset.render_level()
  41. tileset.render_person((character.render_x, character.render_y), direction)
  42. pygame.display.flip()