def update(self): self.running = True self.player.update() if self.player.health <= 0: for entity in self.npcEntities: self.npcEntities.remove(entity) self.background.paraX = self.player.xVelocity * Settings.starParallaxX self.background.paraY = self.player.yVelocity * Settings.starParallaxY self.background.update() for entity in self.npcEntities: if entity.update(): explosion = Explosion(self, entity.xPosition, entity.yPosition) explosion.sprite = pygame.image.load("../assets/explosion.png") explosion.setSprite(explosion.sprite) self.npcEntities.append(explosion) self.npcEntities.remove(entity) for entity in self.playerProjectileEntities: if entity.update(): self.playerProjectileEntities.remove(entity) for entity in self.npcProjectileEntities: if entity.update(): self.npcProjectileEntities.remove(entity) if self.exitTimer < 0 and len(self.npcEntities) == 0: self.exitTimer = 10 if self.exitTimer > 0: self.exitTimer -= 1 elif self.exitTimer == 0: self.running = False self.exitTimer = -1 return self.running