X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ftilemap.h;h=8aa2b481a21f6a772d10d841ace1e101c680ac75;hb=f41a5719a2dc1a50674c69fa511c38a152cc4b03;hp=92d121dfce8be50d65cfe37eb39ca498c070c69c;hpb=edaacb3651cf0560314dd008d7243be4b3b2f8c6;p=supertux.git diff --git a/src/tilemap.h b/src/tilemap.h index 92d121dfc..8aa2b481a 100644 --- a/src/tilemap.h +++ b/src/tilemap.h @@ -21,6 +21,7 @@ #define SUPERTUX_TILEMAP_H #include +#include #include "special/game_object.h" #include "serializable.h" @@ -36,15 +37,6 @@ class Level; class TileManager; class Tile; -struct TileId -{ - TileId() : id(0), hidden(0) {} - explicit TileId(unsigned int i, bool hidden_ = false) : id(i), hidden(hidden_) {} - - unsigned id :31; - unsigned hidden :1; -}; - /** * This class is reponsible for drawing the level tiles */ @@ -85,19 +77,17 @@ public: bool is_solid() const { return solid; } - TileId& get_tile_id_at(const Vector& pos); - /// returns tile in row y and column y (of the tilemap) - Tile* get_tile(int x, int y) const; + const Tile* get_tile(int x, int y) const; /// returns tile at position pos (in world coordinates) - Tile* get_tile_at(const Vector& pos) const; + const Tile* get_tile_at(const Vector& pos) const; - void change(int x, int y, unsigned int newtile); + void change(int x, int y, uint32_t newtile); - void change_at(const Vector& pos, unsigned int newtile); + void change_at(const Vector& pos, uint32_t newtile); private: - std::vector tiles; + std::vector tiles; private: TileManager* tilemanager;