X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Flevel.h;h=555138ae1a7e8356f5e128b8d91b54d88439a2dd;hb=84f81d92cda441c4bdca54b9a45a6a5f0226f59c;hp=d627d82458beacccc14cef22e0268a8d5e9cd754;hpb=5a542dea3c6043703683b68fcaa774f6cb0d9127;p=supertux.git diff --git a/src/level.h b/src/level.h index d627d8245..555138ae1 100644 --- a/src/level.h +++ b/src/level.h @@ -21,31 +21,23 @@ #ifndef SUPERTUX_LEVEL_H #define SUPERTUX_LEVEL_H -#include +#include #include -using namespace SuperTux; - class Sector; -namespace SuperTux { -class LispReader; +namespace lisp { +class Lisp; } class Level { public: - enum EndSequenceType{ - NONE_ENDSEQ_ANIM, - FIREWORKS_ENDSEQ_ANIM - }; - std::string name; std::string author; int timelimit; - typedef std::map Sectors; + typedef std::vector Sectors; Sectors sectors; - EndSequenceType end_sequence_type; public: Level(); @@ -54,10 +46,6 @@ public: // loads a levelfile 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; } @@ -65,23 +53,18 @@ public: const std::string& get_author() const { return author; } - /** Flips the level vertically */ - void do_vertical_flip(); - void add_sector(Sector* sector); 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(); + size_t get_sector_count(); + Sector* get_sector(size_t num); int get_total_badguys(); int get_total_coins(); private: - void load_old_format(LispReader& reader); + void load_old_format(const lisp::Lisp& reader); }; #endif /*SUPERTUX_LEVEL_H*/