Removed remaining SDL_mixer includes
[neverball] / ball / set.h
index f500be0..f5b88b2 100644 (file)
@@ -1,21 +1,61 @@
 #ifndef SET_H
 #define SET_H
 
+#include "base_config.h"
+#include "level.h"
+
 /*---------------------------------------------------------------------------*/
 
 #define SET_FILE "sets.txt"
+
 #define MAXSET 16
+#define MAXLVL 25
+
+struct set
+{
+    char file[PATHMAX];
+
+    char id[MAXSTR];           /* Internal set identifier    */
+    char name[MAXSTR];         /* Set name                   */
+    char desc[MAXSTR];         /* Set description            */
+    char shot[MAXSTR];         /* Set screen-shot            */
+
+    char user_scores[PATHMAX]; /* User high-score file       */
 
-void set_init();
-void set_free();
+    struct score time_score;   /* Challenge score            */
+    struct score coin_score;   /* Challenge score            */
+
+    /* Level stats */
+
+    unsigned int count;        /* Number of levels           */
+    unsigned int locked;       /* Number of locked levels    */
+    unsigned int completed;    /* Number of completed levels */
+};
+
+/*---------------------------------------------------------------------------*/
 
-int  set_exists(int);
-void set_goto(int);
-int  set_curr(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 set_finish_level(struct level_game *, const char *);
+void score_change_name(struct level_game *, const char *);
+
+/*---------------------------------------------------------------------------*/
 
-const char *set_name(int);
-const char *set_desc(int);
-const char *set_shot(int);
+void level_snap(int);
+void set_cheat(void);
 
 /*---------------------------------------------------------------------------*/