Esempio n. 1
0
def create_pipes_and_coins(point, pipes_list, coins_list):
    if pipes_list[-1].rect.left + 202 < 400 and point < 15:
        pipes_list.append(pipes.Pipe([400, 512]))
        coins_list.append(coins.Coin(pipes_list[-1].get_mid_position()))
    elif pipes_list[-1].rect.left + 182 < 400 and 15 <= point < 35:
        pipes_list.append(pipes.Pipe([400, 512]))
        coins_list.append(coins.Coin(pipes_list[-1].get_mid_position()))
    elif pipes_list[-1].rect.left + 152 < 400 and point >= 35:
        pipes_list.append(pipes.Pipe([400, 512]))
        coins_list.append(coins.Coin(pipes_list[-1].get_mid_position()))
Esempio n. 2
0
    def test_text_init(self):
        """Test pipe creation from text"""

        # 1. Create Pipe objects from text
        mypipe0 = pipes.Pipe(text='0 <-> 2')
        mypipe4 = pipes.Pipe(text='4 <-> 2, 3, 6')

        # 2. Make sure it has the default values
        self.assertEqual(mypipe0.name, 0)
        self.assertEqual(mypipe0.connections, [2])
        self.assertEqual(mypipe4.name, 4)
        self.assertEqual(mypipe4.connections, [2, 3, 6])
Esempio n. 3
0
def luaWriter(queue):
    while True:
        with pipes.Pipe('\\\\.\\pipe\\doomred') as pipe:
            try:
                text = queue.get(block=False)[1]
            except Empty:
                text = EMPTY_TEXT
            pipe.write(text)
Esempio n. 4
0
    def test_empty_init(self):
        """Test default pipe creation"""

        # 1. Create default Pipe object
        mypipe = pipes.Pipe()

        # 2. Make sure it has the default values
        self.assertEqual(mypipe.name, None)
        self.assertEqual(mypipe.connections, [])
Esempio n. 5
0
def main():
    bg_day = Background('sprites/background-day.png', 'sprites/base.png',
                        [0, 0], [0, 512])
    bg_game_over = Background('sprites/game_over.png', 'sprites/game_over.png',
                              [0, 655], [0, 655])
    bgx = 0
    bgx2 = bg_day.image_landscape.get_width()
    score = 0
    point = points.Point([170, 100])
    pipes_list = []
    coins_list = []
    bird = birds.Bird([150, 300])
    pipes_list.append(pipes.Pipe([400, 512]))
    coins_list.append(coins.Coin(pipes_list[-1].get_mid_position()))
    while True:
        score = collision_detection(bird, pipes_list, score, coins_list,
                                    bg_game_over, bg_day)
        create_pipes_and_coins(score, pipes_list, coins_list)
        for ev in pygame.event.get():
            if ev.type == pygame.QUIT:
                pygame.quit()
            elif ev.type == pygame.KEYDOWN:
                if ev.key == pygame.K_SPACE:
                    bird.jump()
                    audio.play_fly()

        screen.fill([255, 255, 255])
        bgx, bgx2 = set_landscape(bgx, bgx2, bg_day)
        draw_coins(coins_list)
        bird.falling()
        draw_pipes(pipes_list)
        bird.update()
        screen.blit(bird.image, [bird.rect.left, bird.rect.top])
        set_base(bgx, bgx2, bg_day)
        point.draw(score, screen)
        pygame.display.update()
        clock.tick(60)
Esempio n. 6
0
                    flag_key_released = False
            elif event.type == pygame.KEYUP:
                if event.key == pygame.K_SPACE:
                    flag_key_released = True
            if event.type == pygame.MOUSEBUTTONDOWN:  # If user clicked
                pos = pygame.mouse.get_pos()
                pygame.draw.circle(
                    screen, WHITE, (pos), 20,
                    1)  # Flag that we are done so we exit this loop

    # adjust speed of generations based on slider
    for t in range(int(slider.val)):
        score += 1
        # if no pipes on screen, create new pipe
        if not pipesOnScreen:
            newPipe = pipeModule.Pipe(size[0], size[1])
            pipesOnScreen.append(newPipe)
        """ deal with adding and removing pipes on screen """
        for pipes in pipesOnScreen:
            if ((pipes.getXRight() < 0.7 * size[0])
                    and (pipes.lessThanX is False)):
                # print("adding new pipe!!")
                pipes.lessThanX = True
                newPipe = pipeModule.Pipe(size[0], size[1])
                pipesOnScreen.append(newPipe)
            if (pipes.getXRight() < 0):
                pipesOnScreen.remove(pipes)
        """ deal with moving the pipes..."""
        dist_to_closest_pipe = 9999999
        # determine closest pipe
        for pipe in pipesOnScreen: