7 // Author: Tobias Glaesser <tobi.web@gmx.de>, (C) 2003
9 // Copyright: See COPYING file that comes with this distribution
13 #ifndef SUPERTUX_LEVEL_H
14 #define SUPERTUX_LEVEL_H
18 #include "lispreader.h"
20 /* This type holds meta-information about a level-subset. */
21 /* It could be extended to handle manipulation of subsets. */
26 static void create(const std::string& subset_name);
27 void load(char *subset);
33 std::string description;
38 void parse(lisp_object_t* cursor);
41 #define LEVEL_NAME_MAX 20
47 std::string song_title;
48 std::string bkgd_image;
49 unsigned int* tiles[15];
58 extern texture_type img_bkgd, img_bkgd_tile[2][4], img_solid[4], img_brick[2];
60 void level_default (st_level* plevel);
61 int level_load (st_level* plevel, const char * subset, int level);
62 void level_parse (st_level* plevel, lisp_object_t* cursor);
63 int level_load (st_level* plevel, const char* filename);
64 void level_save (st_level* plevel, const char * subset, int level);
65 void level_free (st_level* plevel);
66 void level_load_gfx (st_level* plevel);
67 void level_change (st_level* plevel, float x, float y, unsigned char c);
68 void level_load_song(st_level* plevel);
69 void level_free_gfx();
70 void level_load_image(texture_type* ptexture, std::string theme, const char * file, int use_alpha);
71 void level_free_song(void);
73 #endif /*SUPERTUX_LEVEL_H*/