X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=ef25edc87996da6e09ab7e8bea0fb3d8067699c1;hb=c4b26cf489dcc65a00bfcc05f7898700d2f0c9e4;hp=16ff5403894d2771b5e3dc7726a0f5e7c3a4c47f;hpb=1146572677fd6858df5fc1fabfd7f7294bdefed7;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 16ff5403..ef25edc8 100644 --- a/src/main.h +++ b/src/main.h @@ -217,6 +217,12 @@ struct OptionInfo boolean verbose; }; +struct SetupJoystickInfo +{ + int snap; + int bomb; +}; + struct SetupKeyboardInfo { KeySym left; @@ -227,12 +233,6 @@ struct SetupKeyboardInfo KeySym bomb; }; -struct SetupJoystickInfo -{ - int snap; - int bomb; -}; - struct SetupInfo { boolean sound_on; @@ -255,6 +255,13 @@ struct SetupInfo } input[MAX_PLAYERS]; }; +struct SetupFileList +{ + char *token; + char *value; + struct SetupFileList *next; +}; + struct PlayerInfo { boolean present; /* player present in level playfield */ @@ -268,8 +275,14 @@ struct PlayerInfo char login_name[MAX_NAMELEN]; char alias_name[MAX_NAMELEN]; + + +#if 0 int handicap; unsigned int setup; +#endif + + int leveldir_nr; int level_nr; @@ -431,6 +444,8 @@ extern struct SoundInfo Sound[]; extern struct JoystickInfo joystick[]; extern struct OptionInfo options; extern struct SetupInfo setup; +extern struct SetupFileList *setup_list; +extern struct SetupFileList *level_setup_list; extern char *sound_name[]; extern int background_loop[]; @@ -1012,7 +1027,7 @@ extern int num_bg_loops; (s)==SND_TWILIGHT) /* default input keys */ -#define KEY_UNDEFINDED 0 +#define KEY_UNDEFINDED XK_VoidSymbol #define DEFAULT_KEY_LEFT XK_Left #define DEFAULT_KEY_RIGHT XK_Right #define DEFAULT_KEY_UP XK_Up @@ -1083,17 +1098,24 @@ extern int num_bg_loops; #ifndef JOYDAT_PATH #define JOYDAT_PATH GAME_DIR #endif +#ifndef SETUP_PATH +#define SETUP_PATH GAME_DIR +#endif #ifndef MSDOS #define SCORE_FILENAME "ROCKS.score" #define NAMES_FILENAME "ROCKS.names" #define LEVDIR_FILENAME "ROCKS.levelinfo" #define JOYDAT_FILENAME "ROCKS.joystick" +#define SETUP_FILENAME "ROCKS.setup" +#define LEVELSETUP_FILENAME "ROCKS.levelsetup" #else #define SCORE_FILENAME "ROCKS.sco" #define NAMES_FILENAME "ROCKS.nam" #define LEVDIR_FILENAME "ROCKS.lev" #define JOYDAT_FILENAME "ROCKS.joy" +#define SETUP_FILENAME "ROCKS.set" +#define LEVELSETUP_FILENAME "ROCKS.lvs" #endif #define JOYDAT_FILE JOYDAT_PATH "/" JOYDAT_FILENAME @@ -1104,6 +1126,7 @@ extern int num_bg_loops; #define LEVDIR_PERMS LEVEL_PERMS #define LEVREC_PERMS LEVEL_PERMS #define JOYDAT_PERMS LEVEL_PERMS +#define SETUP_PERMS LEVEL_PERMS /* old cookies */ #define NAMES_COOKIE_10 "ROCKSNDIAMONDS_NAMES_FILE_VERSION_1.0" @@ -1115,12 +1138,16 @@ extern int num_bg_loops; #define LEVELDIR_COOKIE "ROCKSNDIAMONDS_LEVELDIR_FILE_VERSION_1.0" #define LEVELREC_COOKIE "ROCKSNDIAMONDS_LEVELREC_FILE_VERSION_1.2" #define JOYSTICK_COOKIE "ROCKSNDIAMONDS_JOYSTICK_FILE_VERSION_1.0" +#define SETUP_COOKIE "ROCKSNDIAMONDS_SETUP_FILE_VERSION_1.2" +#define LEVELSETUP_COOKIE "ROCKSNDIAMONDS_LEVELSETUP_FILE_VERSION_1.2" #define LEVEL_COOKIE_LEN (strlen(LEVEL_COOKIE)+1) #define SCORE_COOKIE_LEN (strlen(SCORE_COOKIE)+1) #define NAMES_COOKIE_LEN (strlen(NAMES_COOKIE)+1) #define LEVELDIR_COOKIE_LEN (strlen(LEVELDIR_COOKIE)+1) #define LEVELREC_COOKIE_LEN (strlen(LEVELREC_COOKIE)+1) #define JOYSTICK_COOKIE_LEN (strlen(JOYSTICK_COOKIE)+1) +#define SETUP_COOKIE_LEN (strlen(SETUP_COOKIE)+1) +#define LEVELSETUP_COOKIE_LEN (strlen(LEVELSETUP_COOKIE)+1) #define VERSION_STRING "1.2" #define GAMETITLE_STRING "Rocks'n'Diamonds"