- std::vector<std::string> filenames;
- reader.read_string_vector("images", filenames);
- std::vector<std::string> editor_filenames;
- reader.read_string_vector("editor-images", editor_filenames);
-
- std::vector<int> grid;
- reader.read_int_vector("grid", grid);
-
- // read images
- for(std::vector<std::string>::iterator i = filenames.begin();
- i != filenames.end(); ++i)
- {
- if (grid.size() == 4)
- {
- Surface* surface = new Surface(datadir + "/images/tilesets/" + *i,
- grid[0], grid[1], grid[2], grid[3],
- USE_ALPHA);
- images.push_back(surface);
- }
- else
- {
- Surface* surface = new Surface(datadir + "/images/tilesets/" + *i, USE_ALPHA);
- images.push_back(surface);
- }
- }
-
- for(std::vector<std::string>::iterator i = editor_filenames.begin();
- i != editor_filenames.end(); ++i) {
- Surface* surface
- = new Surface(datadir + "/images/tilesets/" + *i, USE_ALPHA);
- editor_images.push_back(surface);
- }
-
- return id;
-}
-
-//---------------------------------------------------------------------------
-
-TileManager::TileManager()
-{
- std::string filename = datadir + "/images/tilesets/supertux.stgt";
- load_tileset(filename);
-}
-
-TileManager::~TileManager()
-{
- for(std::vector<Tile*>::iterator i = tiles.begin(); i != tiles.end(); ++i) {
- delete *i;
- }
-
- delete tilegroups_;
-}
-
-void TileManager::load_tileset(std::string filename)
-{
- if(filename == current_tileset)
- return;
-
- // free old tiles
- for(std::vector<Tile*>::iterator i = tiles.begin(); i != tiles.end(); ++i) {
- delete *i;