def update(self, deltaTime, keyStrokes, events, activeScene): self.activeScene = activeScene self.nextActiveScene = "game" for e in events: if e.type == pygame.QUIT: self.nextActiveScene = "quit" if self.activeScene == "game": Scene.update(self, deltaTime, keyStrokes, events, activeScene) t = timer() if len(self.plannedObsGen) == 0: self.genObs(t) while len( self.plannedObsGen) and self.plannedObsGen[0]["time"] <= t: obs = Obstacle.generatePair(self.plannedObsGen[0]["height"], self.plannedObsGen[0]["spacing"]) self.obstacles.extend(obs) self.add(obs[0]) self.add(obs[1]) del self.plannedObsGen[0] for o in self.obstacles: if o.f_pop: o.kill() self.obstacles.remove(o) if pygame.sprite.collide_mask(self.bird, o): self.nextActiveScene = "quit" if pygame.sprite.collide_mask( self.bird, self.bounds[0]) or pygame.sprite.collide_mask( self.bird, self.bounds[1]): self.nextActiveScene = "quit" self.lastActiveScene = self.activeScene