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 time_left;
+ int timelimit;
typedef std::map<std::string, Sector*> Sectors;
Sectors sectors;
+ EndSequenceType end_sequence_type;
public:
Level();
~Level();
+ // 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; }
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);
int get_total_coins();
private:
- void load_old_format(LispReader& reader);
+ void load_old_format(const lisp::Lisp& reader);
};
#endif /*SUPERTUX_LEVEL_H*/