def setPlayerBlock(x, y, width, height): posX = x posY = y block = Obstacle(posX, posY) block.setImg('block.bmp') block.setSize(width, height) block.setShape(x, y, width, height) return block
def setBlocksRand(blocks, screenWidth, screenHeight, width, height, num): for x in range(num): posX = randint(100, screenWidth) posY = randint(0, screenHeight) block = Obstacle(posX, posY) block.setImg('block.bmp') block.setSize(width, height) block.setShape(block.x, block.y, width, height) blocks.append(block)
def setBlocks(blocks, width, height, num): posX = 0 posY = 0 for x in range(num): block = Obstacle(posX, posY) block.setImg('block.bmp') block.setSize(width, height) block.setShape(block.x, block.y, width, height) blocks.append(block) posX += 60
def main(): pygame.init() world = World([1600, 600]) player = Player(500, 300) obstacle = Obstacle(300, 100, 200, 100) obstacle2 = Obstacle(700, 500, 100, 200) obstacle3 = Obstacle(300, 500, 400, 100) world.nodes.append(player) world.nodes.append(obstacle) world.nodes.append(obstacle2) world.nodes.append(obstacle3) running = True pressedUP = False pressedDOWN = False pressedLEFT = False pressedRIGHT = False pressedR = False pressedLSHIFT = False while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False if event.type == pygame.KEYDOWN: if event.key == pygame.K_UP: pressedUP = True if event.key == pygame.K_DOWN: pressedDOWN = True if event.key == pygame.K_LEFT: pressedLEFT = True if event.key == pygame.K_RIGHT: pressedRIGHT = True if event.key == pygame.K_r: pressedR = True if event.key == pygame.K_LSHIFT: pressedLSHIFT = True if event.type == pygame.KEYUP: if event.key == pygame.K_UP: pressedUP = False if event.key == pygame.K_DOWN: pressedDOWN = False if event.key == pygame.K_LEFT: pressedLEFT = False if event.key == pygame.K_RIGHT: pressedRIGHT = False if event.key == pygame.K_r: pressedR = False if event.key == pygame.K_LSHIFT: pressedLSHIFT = False if pressedUP: player.y -= 2 if pressedDOWN: player.y += 2 if pressedLEFT: player.x -= 2 if pressedRIGHT: player.x += 2 if pressedR and pressedLSHIFT: player.angle = (player.angle - player.deltaTheta) % (2 * math.pi) elif pressedR: player.angle = (player.angle + player.deltaTheta) % (2 * math.pi) world.nodes[0].generateRays(world.nodes[1:]) world.update()
def main(): pygame.init() screen = pygame.display.set_mode((cfg.SCREEN_W, cfg.SCREEN_H)) pygame.display.set_caption('Flappy!') background = pygame.Surface(screen.get_size()) background = background.convert() background.fill(blue) bird = Player() obgroup = pygame.sprite.Group() screen.blit(background, (0, 0)) screen.blit(bird.surf, bird.rect) pygame.display.flip() done = False clock = pygame.time.Clock() delta = clock.tick(60) myfont = pygame.font.Font(None, 40) while not done: scoretext = myfont.render("Score: " + str(cfg.score), 0, (0, 0, 0)) for event in pygame.event.get(): if event.type == pygame.QUIT: done = True elif event.type == KEYDOWN: if event.key == K_SPACE: bird.jump() if event.key == K_ESCAPE: done = True if cfg.create == True: ob = Obstacle( randint(gap + cfg.SCREEN_H / 12, cfg.SCREEN_H * 11 / 12)) obgroup.add(ob) cfg.create = False bird.update() obgroup.update() for each in obgroup: if (bird.rect.colliderect(each.rect1)) or (bird.rect.colliderect( each.rect2)): bird.dead = True if bird.dead == True: done = True screen.blit(background, (0, 0)) screen.blit(bird.surf, bird.rect) for each in obgroup: screen.blit(each.surf1, each.rect1) screen.blit(each.surf2, each.rect2) screen.blit(scoretext, (5, 10)) pygame.display.flip() cfg.delta = clock.tick(60)