def main(): level, screen, clock, fps = set_config() group = RenderUpdates() heroine = Hero(20, 140, "elisa", group) keys = { K_LEFT: False, K_RIGHT: False, K_UP: False, K_DOWN: False, K_RETURN: False, 27: False, K_a: False } # obs 27 = 'esc' pygame.display.flip() while True: clock.tick(fps) for e in pygame.event.get([KEYUP, KEYDOWN]): valor = (e.type == KEYDOWN) if e.key in keys.keys(): keys[e.key] = valor if keys[27]: # tecla ESC pygame.quit() sys.exit() if heroine.attacking: heroine.animate_attack() elif keys[K_LEFT]: heroine.move("left") elif keys[K_RIGHT]: heroine.move("right") elif keys[K_UP]: heroine.jump() elif keys[K_DOWN]: heroine.get_down() elif keys[K_a]: heroine.attack() #heroine.is_jumping(gravity) utils.clear_screen(level, screen) pygame.display.update(group.draw(screen))
else: the_guardian.kill_hero(macgyver, DEAD_PATH) screen.blit(macgyver.face, macgyver.coordinates) ACTIVE = False #If MacGyver reaches the arrival if macgyver.coordinates == ARRIVAL_COORDINATES: macgyver.win = True ACTIVE = False #Event management for event in pygame.event.get(): if event.type == QUIT: ACTIVE = False if event.type == KEYDOWN: x, y = macgyver.move(event) #Empty place without a wall, a character or an item if (x, y) in board_game.empty_places: board_game.empty_places.remove((x, y)) modif = True #Place where there is an item elif (x, y) in [item.coordinates for item in Item.LIST_ITEMS]: macgyver.bag += 1 Item.LIST_ITEMS = [ item for item in Item.LIST_ITEMS if item.coordinates != (x, y) ] modif = True