def load_level(filename): """ Loads the level and returns objects of your choosing """ f = open(filename, "r") l = f.read().splitlines( ) # get the list which contains all lines of the file pointer1 = l.index("[planet]") planet_name = l[pointer1 + 1].split(",")[1] # extract information about planet planet_width = int(l[pointer1 + 2].split(",")[1]) planet_height = int(l[pointer1 + 3].split(",")[1]) num_tile = planet_width * planet_height planet = Planet(planet_name, planet_width, planet_height, num_tile) rover_x, rover_y = int(l[pointer1 + 4].split(",")[1]), int( l[pointer1 + 4].split(",")[2]) # extract information about rover rover = Rover(rover_x, rover_y, planet) pointer = l.index("[tiles]") + 1 # create tiles on planet tiles = [] i = 0 j = 0 for x in range(num_tile): T = l[pointer + x].split(",") if len(T) <= 2: T.append(T[1]) tiles.append(Tile(T[0], int(T[1]), int(T[2]))) i += 1 if i == planet_width: planet.add_tile(j, tiles) i = 0 j += 1 tiles = [] return planet, rover