from display import Display from status import Status from player import Player from field import Field from enemies import Enemies from stats import Stats from .gameplay import Gameplay class Level: """ One level that can be played """ def __init__(self, display = None): self.display = display self.status = Status() self.field = Field() self.enemies = Enemies(field = self.field) self.player = Player(field = self.field, enemies = self.enemies) self.gameplay = Gameplay(player = self.player, status = self.status) self.obj_classes = ( self.status, self.field, self.enemies, self.player) def step(self, dt): for obj in self.obj_classes: obj.update(dt) Stats.update_bonus(dt) self.display.update( (obj.sprites for obj in self.obj_classes) ) if self.gameplay.step(): return False return True