X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ftilemap.h;h=92d121dfce8be50d65cfe37eb39ca498c070c69c;hb=e4db6eb50cd6bcba607858b5e6c4c5d53531ed1f;hp=fa39f2a471f7f4a533db9569454a8d5827f74f94;hpb=4768775a296265eea1afae5cf971b1706fc049fd;p=supertux.git diff --git a/src/tilemap.h b/src/tilemap.h index fa39f2a47..92d121dfc 100644 --- a/src/tilemap.h +++ b/src/tilemap.h @@ -22,13 +22,18 @@ #include -#include "game_object.h" +#include "special/game_object.h" #include "serializable.h" -#include "vector.h" +#include "math/vector.h" + +using namespace SuperTux; + +namespace SuperTux { +class LispReader; +} class Level; class TileManager; -class LispReader; class Tile; struct TileId @@ -48,6 +53,7 @@ class TileMap : public GameObject, public Serializable public: TileMap(); TileMap(LispReader& reader); + TileMap(int layer_, bool solid_, size_t width_, size_t height_); virtual ~TileMap(); virtual void write(LispWriter& writer); @@ -63,6 +69,10 @@ public: */ void resize(int newwidth, int newheight); + /** Flip the all tile map vertically. The purpose of this is to let + player to play the same level in a different way :) */ + void do_vertical_flip(); + size_t get_width() const { return width; } @@ -95,6 +105,8 @@ private: float speed; int width, height; int layer; + + bool vertical_flip; }; #endif /*SUPERTUX_TILEMAP_H*/