X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsetup.c;h=65f0eec425d1fecfa890714d67c86f71196a4e32;hb=016e6a754b47cf2d4f67ee754d66213d9e5115ee;hp=4027a6e065a4f23823b7c1050345a08330c9b6a7;hpb=1fd06503004016a245257a08748473d749559586;p=rocksndiamonds.git diff --git a/src/libgame/setup.c b/src/libgame/setup.c index 4027a6e0..65f0eec4 100644 --- a/src/libgame/setup.c +++ b/src/libgame/setup.c @@ -2831,10 +2831,11 @@ SetupFileHash *loadSetupFileHash(char *filename) #define LEVELINFO_TOKEN_HANDICAP 29 #define LEVELINFO_TOKEN_TIME_LIMIT 30 #define LEVELINFO_TOKEN_SKIP_LEVELS 31 -#define LEVELINFO_TOKEN_USE_EMC_TILES 32 -#define LEVELINFO_TOKEN_INFO_SCREENS_FROM_MAIN 33 +#define LEVELINFO_TOKEN_ALLOW_SKIPPING_LEVELS 32 +#define LEVELINFO_TOKEN_USE_EMC_TILES 33 +#define LEVELINFO_TOKEN_INFO_SCREENS_FROM_MAIN 34 -#define NUM_LEVELINFO_TOKENS 34 +#define NUM_LEVELINFO_TOKENS 35 static LevelDirTree ldi; @@ -2858,6 +2859,8 @@ static struct TokenInfo levelinfo_tokens[] = { TYPE_BOOLEAN, &ldi.latest_engine, "latest_engine" }, { TYPE_BOOLEAN, &ldi.level_group, "level_group" }, { TYPE_BOOLEAN, &ldi.readonly, "readonly" }, + { TYPE_STRING, &ldi.graphics_set_ecs, "graphics_set.old" }, + { TYPE_STRING, &ldi.graphics_set_aga, "graphics_set.new" }, { TYPE_STRING, &ldi.graphics_set_ecs, "graphics_set.ecs" }, { TYPE_STRING, &ldi.graphics_set_aga, "graphics_set.aga" }, { TYPE_STRING, &ldi.graphics_set, "graphics_set" }, @@ -3230,8 +3233,8 @@ void setSetupInfo(struct TokenInfo *token_info, *(boolean *)setup_value = get_boolean_from_string(token_value); break; - case TYPE_SWITCH3: - *(int *)setup_value = get_switch3_from_string(token_value); + case TYPE_SWITCH_3_STATES: + *(int *)setup_value = get_switch_3_state_from_string(token_value); break; case TYPE_KEY: @@ -4859,9 +4862,10 @@ char *getSetupValue(int type, void *value) strcpy(value_string, (*(boolean *)value ? "on" : "off")); break; - case TYPE_SWITCH3: - strcpy(value_string, (*(int *)value == AUTO ? "auto" : - *(int *)value == FALSE ? "off" : "on")); + case TYPE_SWITCH_3_STATES: + strcpy(value_string, (*(int *)value == STATE_AUTO ? "auto" : + *(int *)value == STATE_ASK ? "ask" : + *(int *)value == STATE_FALSE ? "off" : "on")); break; case TYPE_YES_NO: @@ -4869,8 +4873,13 @@ char *getSetupValue(int type, void *value) break; case TYPE_YES_NO_AUTO: - strcpy(value_string, (*(int *)value == AUTO ? "auto" : - *(int *)value == FALSE ? "no" : "yes")); + strcpy(value_string, (*(int *)value == STATE_AUTO ? "auto" : + *(int *)value == STATE_FALSE ? "no" : "yes")); + break; + + case TYPE_YES_NO_ASK: + strcpy(value_string, (*(int *)value == STATE_ASK ? "ask" : + *(int *)value == STATE_FALSE ? "no" : "yes")); break; case TYPE_ECS_AGA: