示例#1
0
def main():
    pygame.init()
    screen = pygame.display.set_mode(SIZE)
    clock = pygame.time.Clock()

    noto_sans = pygame.font.Font('NotoSans-Regular.ttf', 12)

    field = Field(area=Rect(x=10, y=50, w=WIDTH - 20, h=HEIGHT - 60))
    snake = Snake(
        starting_point=random_point(offset=100, area=field.client_area()))
    score = Score(font=noto_sans, position=Point(x=10, y=10))
    goal = Goal(area=generate_goal_area(snake=snake, field=field))
    controller = KeyboardController(
        snake=snake,
        start_direction=random_direction(),
        key_map=KeyMap(
            up=pygame.K_UP,
            down=pygame.K_DOWN,
            left=pygame.K_LEFT,
            right=pygame.K_RIGHT
            # up=pygame.K_w, down=pygame.K_s, left=pygame.K_a, right=pygame.K_d
        ))

    running = True
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False
            controller.handle_event(event)

        if not running:
            break

        score.update(score=len(snake))

        screen.fill(BLACK)
        for go in [field, snake, score, goal]:
            go.draw_to(screen)
        pygame.display.flip()

        controller.update()
        running = check_collisions(snake, screen, goal, field)
        clock.tick(120)

    print(f'Game over! Your score: {len(snake)}')
    pygame.quit()
示例#2
0
        img = ImageCreator()

        ####################### Loading Objects ###############################

        # create obstacle
        lava = Lava()
        lava.pos = 8

        # create hero
        hero = Hero()
        hero.pos = 0
        hero.vel = .5

        #create goal
        goal = Goal()
        goal.width = 4

        #for tracking time
        start_time = time.time()
        frame = 0

        ####################### led painting happens here ####################
        while True:
            # Create a new driver config (for setup purposes)
            driver_config_proto = driver_pb2.DriverConfig()
            img.clear_all()

            # Painting obstacles
            img.set_led(int(lava.loc), int(lava.r), int(lava.g), int(lava.b),
                        int(lava.w))