- """Draw map view from .game.terrain_map, .game.things."""
- whole_map = []
- for c in self.game.terrain_map:
- whole_map += [c]
- for t in self.game.things:
- pos_i = t.position[0] * (self.game.map_size[1] + 1) + t.position[1]
- whole_map[pos_i] = t.symbol
- return ''.join(whole_map)
+ """Draw map view from .game.map_.terrain, .game.things."""
+ map_lines = []
+ map_size = len(self.game.world.map_.terrain)
+ start_cut = 0
+ while start_cut < map_size:
+ limit = start_cut + self.game.world.map_.size[1]
+ map_lines += [self.game.world.map_.terrain[start_cut:limit]]
+ start_cut = limit
+ for t in self.game.world.things:
+ line_as_list = list(map_lines[t.position[0]])
+ line_as_list[t.position[1]] = self.game.symbol_for_type(t.type_)
+ map_lines[t.position[0]] = ''.join(line_as_list)
+ return "\n".join(map_lines)