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 */
43 /** Bonusbox, content is stored in \a data */
46 /** Tile is a distro/coin */
49 /** General purpose data attached to a tile (content of a box, type of coin) */
52 /** Id of the tile that is going to replace this tile once it has
53 been collected or jumped at */
62 std::vector<int> tiles;
69 std::vector<Tile*> tiles;
70 static TileManager* instance_ ;
71 static std::vector<TileGroup>* tilegroups_;
72 void load_tileset(std::string filename);
75 static TileManager* instance() { return instance_ ? instance_ : instance_ = new TileManager(); }
76 static std::vector<TileGroup>* tilegroups() { return tilegroups_ ? tilegroups_ : tilegroups_ = new std::vector<TileGroup>; }
77 Tile* get(unsigned int id) {
84 // Never return 0, but return the 0th tile instead so that
85 // user code doesn't have to check for NULL pointers all over