X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Flevel.h;h=cc280b5e31c022aae7318750cdd0c887a63e3346;hb=8385faa306eca6d96ab11ed7dae293d85e9c4e4f;hp=0068fbe1dcda1c449f38fd99d4c32a8c1fd7c793;hpb=576d79481d0cec9dd441b9b235a01da63584d137;p=supertux.git diff --git a/src/level.h b/src/level.h index 0068fbe1d..cc280b5e3 100644 --- a/src/level.h +++ b/src/level.h @@ -24,17 +24,28 @@ #include #include +using namespace SuperTux; + class Sector; + +namespace SuperTux { class LispReader; +} class Level { public: + enum EndSequenceType{ + NONE_ENDSEQ_ANIM, + FIREWORKS_ENDSEQ_ANIM + }; + std::string name; std::string author; - int time_left; + int timelimit; typedef std::map Sectors; Sectors sectors; + EndSequenceType end_sequence_type; public: Level(); @@ -42,6 +53,10 @@ public: void load(const std::string& filename); void save(const std::string& filename); + static void create(const std::string& filename); + + EndSequenceType get_end_sequence_type() const + { return end_sequence_type; } const std::string& get_name() const { return name; } @@ -56,6 +71,14 @@ public: Sector* get_sector(const std::string& name); + Sector* get_next_sector(const Sector* sector); + Sector* get_previous_sector(const Sector* sector); + + int get_total_sectors(); + + int get_total_badguys(); + int get_total_coins(); + private: void load_old_format(LispReader& reader); };