X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=ball%2Fdemo.h;h=ee7ee1ff1b8bebb5308bd64f6d4443890dce162c;hb=9a5b5f027b27b45b4926604f48cf00904b37ec64;hp=b1cea8ff1bdd0c06a53aeaa4240e446e9649e4dd;hpb=c6d6c9e34bdbdc6e4d9e922130f8a8b0f3a0d20a;p=neverball diff --git a/ball/demo.h b/ball/demo.h index b1cea8f..ee7ee1f 100644 --- a/ball/demo.h +++ b/ball/demo.h @@ -1,34 +1,67 @@ #ifndef DEMO_H #define DEMO_H +#include + +#include "level.h" + /*---------------------------------------------------------------------------*/ -#define MAXDEMO 64 +struct demo +{ + char name[PATHMAX]; /* demo basename */ + char filename[MAXSTR]; /* demo path */ + + int timer; /* elapsed time */ + int coins; /* coin number */ + int status; /* how the replay end */ + int mode; /* game mode */ + time_t date; /* date of creation */ + char player[MAXNAM]; /* player name */ + char shot[PATHMAX]; /* image filename */ + char file[PATHMAX]; /* level filename */ + char back[PATHMAX]; /* level bg filename */ + char grad[PATHMAX]; /* level gradient filename */ + char song[PATHMAX]; /* level song filename */ + int time; /* time limit (! training mode) */ + int goal; /* coin to open the goal (! training mode) */ + int score; /* sum of coins (challenge mode) */ + int balls; /* number of balls (challenge mode) */ + int times; /* total time (challenge mode) */ +}; + +/*---------------------------------------------------------------------------*/ -int demo_scan(void); -const char *demo_pick(void); -const char *demo_name(int); -const char *demo_shot(int); -int demo_coins(int); -int demo_clock(int); +#define MAXDEMO 256 -int demo_exists(char *); +int demo_scan(void); +const char *demo_pick(void); +const struct demo *demo_get(int); + +const char *date_to_str(time_t); + +int demo_exists(const char *); void demo_unique(char *); /*---------------------------------------------------------------------------*/ -int demo_play_init(const char *, const char *, const char *, - const char *, const char *, const char *, - int, int, int, int, int); -void demo_play_step(float); -void demo_play_stat(int, int); -void demo_play_stop(const char *); +int demo_play_init(const char *, const struct level *, + const struct level_game *); +void demo_play_step(void); +void demo_play_stat(const struct level_game *); +void demo_play_stop(void); + +int demo_saved (void); +void demo_rename(const char *); /*---------------------------------------------------------------------------*/ -int demo_replay_init(const char *, int *, int *, int *, int *); -int demo_replay_step(float *); +int demo_replay_init(const char *, struct level_game *); +int demo_replay_step(float); void demo_replay_stop(int); +void demo_replay_dump_info(void); + +const struct demo *curr_demo_replay(void); /*---------------------------------------------------------------------------*/