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()))
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])
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)
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, [])
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)
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: