Пример #1
0
def main():
    fps = 60
    dt = 1. / fps

    # Initialize the game
    pygame.mixer.pre_init(frequency=44100, size=-16, channels=1, buffer=512)
    pygame.init()
    screen = pygame.display.set_mode((int(SCREEN_SIZE.x), int(SCREEN_SIZE.y)))
    clock = pygame.time.Clock()
    font = pygame.font.SysFont("Arial", 16)

    # Music!
    pygame.mixer.music.load("res/music/fight.mp3")
    pygame.mixer.music.play(-1)  # loop forever

    # Load the world
    world = TileWorld('levels/level.tmx')
    player1 = Player("Player1", "res/images/cat_gun.png",
                     up=KEYS.K_UP, left=KEYS.K_LEFT,
                     right=KEYS.K_RIGHT, down=KEYS.K_DOWN, shoot=KEYS.K_SPACE)
    player2 = Player("Player2", "res/images/cat_gun.png",
                     up=KEYS.K_w, left=KEYS.K_a,
                     right=KEYS.K_d, down=KEYS.K_s, shoot=KEYS.K_e)


    
    players = [player1, player2]

    # track how long each key has been pressed
    pressed_keys = {}

    # Start the game loop
    running = True
    while running:
        # Input management
        pressed_keys = calculate_input(pressed_keys)

        # Update world
        SPACE.step(dt)
        world.update(dt, players)
        for player in players:
            player.update(pressed_keys)

        # Draw stuff
        screen.fill((54, 54, 54, 255))  # Dark gray color
        world.draw(screen)
        for player in players:
            player.draw(screen, world.camera)
        #import pymunk
        #pymunk.pygame_util.draw(screen, SPACE)  # TODO: camera support
        screen.blit(font.render("{} FPS".format(clock.get_fps()), 1,
                                THECOLORS["white"]), (0, 0))

        # Apply the drawing to the screen
        pygame.display.flip()

        # Wait for next frame
        clock.tick(fps)