/*---------------------------------------------------------------------------*/
#define SET_FILE "sets.txt"
+
#define MAXSET 16
#define MAXLVL 25
-/* A pack of levels */
struct set
{
- /* set global info */
- int number; /* number of the set */
-
- char file[MAXSTR]; /* set file description */
- char user_scores[MAXSTR]; /* user highscore file */
- char setname[MAXSTR]; /* internal set name */
-
- char name[MAXSTR]; /* set name */
- char desc[MAXSTR]; /* set description */
- char shot[MAXSTR]; /* screenshot image file*/
-
- struct score time_score; /* challenge score */
- struct score coin_score; /* challenge score */
-
- /* levels info */
-
- int count; /* number of levels */
-};
-
-/*---------------------------------------------------------------------------*/
+ char file[PATHMAX];
-void set_init();
+ char id[MAXSTR]; /* Internal set identifier */
+ char name[MAXSTR]; /* Set name */
+ char desc[MAXSTR]; /* Set description */
+ char shot[MAXSTR]; /* Set screen-shot */
-int set_exists(int);
-const struct set *get_set(int);
+ char user_scores[PATHMAX]; /* User high-score file */
-/*---------------------------------------------------------------------------*/
+ struct score time_score; /* Challenge score */
+ struct score coin_score; /* Challenge score */
-int set_completed(const struct set *);
+ /* Level stats */
-int set_level_exists(const struct set *, int);
+ unsigned int count; /* Number of levels */
+ unsigned int locked; /* Number of locked levels */
+ unsigned int completed; /* Number of completed levels */
+};
/*---------------------------------------------------------------------------*/
-void set_goto(int i);
-const struct set *curr_set(void);
+int set_init();
+int set_exists(int);
+
+const struct set *get_set(int);
+int set_unlocked(const struct set *);
+int set_completed(const struct set *);
+int set_level_exists(const struct set *, int);
+
+void set_goto(int i);
+const struct set * curr_set(void);
const struct level *get_level(int);
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
void level_snap(int);
-
void set_cheat(void);
/*---------------------------------------------------------------------------*/