def init_level(self, level): world = "" with open(r"../Files/Levels/{0}.btmn".format(level), "r") as level_file: world = level_file.readline() self.lights = level_file.readline() self.level_settings = level_file.readline() self.swinging_lights = level_file.readline() self.level_settings = json.loads(self.level_settings, cls=Decoder) Light.set_up_surfaces(self.level_settings.width, self.level_settings.height) self.swinging_lights = json.loads(self.swinging_lights, cls=Decoder) world = json.loads(world, cls=Decoder) self.lights = json.loads(self.lights, cls=Decoder) self.level_blocks = list( filter(lambda item: isinstance(item, Block), world)) self.level_saws = list( filter(lambda item: isinstance(item, SawBlock), world)) for light in self.lights + self.swinging_lights: light.update_obstacles(self.level_blocks) self.camera = Camera(self.level_settings.width, self.level_settings.height, self.gui_settings["resolution"][0], self.gui_settings["resolution"][1]) SoundEffect.play_music(r"{0}.mp3".format(self.level_settings.music)) self.player = Player(Vector(self.level_settings.start_position), self) self.player.equipment.equip("Batarang", 3)
def setUpClass(cls): Light.set_up_surfaces(32, 32) cls.result = [(10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0), (10.0, 10.0)]
def __init__(self): self.world = [] self.lights = [] self.swinging_lights = [] # this is the block according to which the view will move self.observer = Block((0, 0, 0), WIDTH, HEIGHT, 0, 0) self.setup_menu_camera() self.setup_text_boxes() self.setup_buttons() self.set_up_boundaries() Light.set_up_surfaces(LevelDesign.GAME_MEASURES[0], LevelDesign.GAME_MEASURES[1]) self.settings = Settings(LevelDesign.GAME_MEASURES[0], LevelDesign.GAME_MEASURES[1], MUSIC_IN_GAME1, DEFAULT_START_POSITION)
def init_level(self, level): world = "" with open( r"../Files/Levels/{0}.btmn".format(level), "r") as level_file: world = level_file.readline() self.lights = level_file.readline() self.level_settings = level_file.readline() self.swinging_lights = level_file.readline() self.level_settings = json.loads(self.level_settings, cls=Decoder) Light.set_up_surfaces(self.level_settings.width, self.level_settings.height) self.swinging_lights = json.loads(self.swinging_lights, cls=Decoder) world = json.loads(world, cls=Decoder) self.lights = json.loads(self.lights, cls=Decoder) self.level_blocks = list( filter( lambda item: isinstance( item, Block), world)) self.level_saws = list( filter( lambda item: isinstance( item, SawBlock), world)) for light in self.lights + self.swinging_lights: light.update_obstacles(self.level_blocks) self.camera = Camera(self.level_settings.width, self.level_settings.height, self.gui_settings["resolution"][0], self.gui_settings["resolution"][1]) SoundEffect.play_music(r"{0}.mp3".format(self.level_settings.music)) self.player = Player(Vector(self.level_settings.start_position), self) self.player.equipment.equip("Batarang", 3)
def load(self): with open("../Files/Levels/level2.btmn", "r") as level: world = level.readline() light = level.readline() settings = level.readline() swinging_lights = level.readline() self.settings = json.loads(settings, cls=Decoder) LevelDesign.GAME_MEASURES[0] = self.settings.width LevelDesign.GAME_MEASURES[1] = self.settings.height Light.set_up_surfaces(LevelDesign.GAME_MEASURES[0], LevelDesign.GAME_MEASURES[1]) self.camera = Camera(LevelDesign.GAME_MEASURES[0], LevelDesign.GAME_MEASURES[1], LevelDesign.GAME_MEASURES[2], LevelDesign.GAME_MEASURES[3]) self.world = json.loads(world, cls=Decoder) self.lights = json.loads(light, cls=Decoder) self.swinging_lights = json.loads(swinging_lights, cls=Decoder) for light in self.lights + self.swinging_lights: light.update_obstacles(self.world)