X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fworldmap.h;h=a96c4ff27b9592714e1cfbccd5305b97e6c7956c;hb=997685a947eaa0b269873e5956908b734cde1d76;hp=2e728bb164c42a6171e0b8a00df41f0cacb943cf;hpb=8fa514bf18494f19ca1fbae3512354f0fab22bce;p=supertux.git diff --git a/src/worldmap.h b/src/worldmap.h index 2e728bb16..a96c4ff27 100644 --- a/src/worldmap.h +++ b/src/worldmap.h @@ -97,12 +97,13 @@ private: public: Tux(WorldMap* worldmap_); - void draw(); + void draw(const Point& offset); void update(float delta); void set_direction(Direction d) { input_direction = d; } bool is_moving() const { return moving; } + Point get_pos(); Point get_tile_pos() const { return tile_pos; } void set_tile_pos(Point p) { tile_pos = p; } }; @@ -131,6 +132,7 @@ private: int x; int y; std::string name; + bool solved; }; typedef std::vector Levels; @@ -141,6 +143,9 @@ private: Direction input_direction; bool enter_level; + Point offset; + + void draw_status(); public: WorldMap(); ~WorldMap(); @@ -156,7 +161,7 @@ public: void update(); /** Draw one frame */ - void draw(); + void draw(const Point& offset); Point get_next_tile(Point pos, Direction direction); Tile* at(Point pos); @@ -164,6 +169,8 @@ public: /** Check if it is possible to walk from \a pos into \a direction, if possible, write the new position to \a new_pos */ bool path_ok(Direction direction, Point pos, Point* new_pos); + + void savegame(const std::string& filename); }; } // namespace WorldMapNS @@ -174,4 +181,4 @@ void worldmap_run(); /* Local Variables: */ /* mode:c++ */ -/* End */ +/* End: */