7 // Author: Tobias Glaesser <tobi.web@gmx.de>, (C) 2004
9 // Copyright: See COPYING file that comes with this distribution
19 #include "lispreader.h"
29 std::vector<texture_type> images;
30 std::vector<texture_type> editor_images;
32 std::vector<std::string> filenames;
34 /** solid tile that is indestructable by Tux */
37 /** a brick that can be destroyed by jumping under it */
46 /** Bonusbox, content is stored in \a data */
49 /** Tile is a distro/coin */
52 /** General purpose data attached to a tile (content of a box, type of coin) */
55 /** Id of the tile that is going to replace this tile once it has
56 been collected or jumped at */
65 std::vector<int> tiles;
72 std::vector<Tile*> tiles;
73 static TileManager* instance_ ;
74 static std::vector<TileGroup>* tilegroups_;
75 void load_tileset(std::string filename);
78 static TileManager* instance() { return instance_ ? instance_ : instance_ = new TileManager(); }
79 static std::vector<TileGroup>* tilegroups() { return tilegroups_ ? tilegroups_ : tilegroups_ = new std::vector<TileGroup>; }
80 Tile* get(unsigned int id) {
87 // Never return 0, but return the 0th tile instead so that
88 // user code doesn't have to check for NULL pointers all over