X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.c;h=2f031820dcfc2d60c458b2676ddd6c0e05b6a08d;hb=3fb68b18f28034e492534fb3b5579fd1da888292;hp=a0e203572a7b13ad69de974a15fbe51f6e0c96f5;hpb=0548cd8fd0353c19608df8a7079fc2c39cc4ce27;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index a0e20357..2f031820 100644 --- a/src/files.c +++ b/src/files.c @@ -90,7 +90,7 @@ static void setLevelInfoToDefaults() level.yam_content[i][x][y] = (i < STD_ELEMENT_CONTENTS ? EL_ROCK : EL_EMPTY); - Feld[0][0] = Ur[0][0] = EL_PLAYER1; + Feld[0][0] = Ur[0][0] = EL_PLAYER_1; Feld[STD_LEV_FIELDX-1][STD_LEV_FIELDY-1] = Ur[STD_LEV_FIELDX-1][STD_LEV_FIELDY-1] = EL_EXIT_CLOSED; @@ -143,9 +143,9 @@ static int checkLevelElement(int element) element = EL_CHAR_QUESTION; } else if (element == EL_PLAYER_OBSOLETE) - element = EL_PLAYER1; + element = EL_PLAYER_1; else if (element == EL_KEY_OBSOLETE) - element = EL_KEY1; + element = EL_KEY_1; return element; } @@ -1379,14 +1379,27 @@ void SaveScore(int level_nr) #define NUM_PLAYER_SETUP_TOKENS 16 +/* system setup */ +#define SETUP_TOKEN_SYSTEM_SDL_AUDIODRIVER 0 +#define SETUP_TOKEN_SYSTEM_AUDIO_FRAGMENT_SIZE 1 + +#define NUM_SYSTEM_SETUP_TOKENS 2 + +/* options setup */ +#define SETUP_TOKEN_OPTIONS_VERBOSE 0 + +#define NUM_OPTIONS_SETUP_TOKENS 1 + + static struct SetupInfo si; static struct SetupEditorInfo sei; static struct SetupShortcutInfo ssi; static struct SetupInputInfo sii; +static struct SetupSystemInfo syi; +static struct OptionInfo soi; static struct TokenInfo global_setup_tokens[] = { - /* global setup */ { TYPE_STRING, &si.player_name, "player_name" }, { TYPE_SWITCH, &si.sound, "sound" }, { TYPE_SWITCH, &si.sound_loops, "repeating_sound_loops" }, @@ -1413,7 +1426,6 @@ static struct TokenInfo global_setup_tokens[] = static struct TokenInfo editor_setup_tokens[] = { - /* shortcut setup */ { TYPE_SWITCH, &sei.el_boulderdash, "editor.el_boulderdash" }, { TYPE_SWITCH, &sei.el_emerald_mine, "editor.el_emerald_mine" }, { TYPE_SWITCH, &sei.el_more, "editor.el_more" }, @@ -1427,7 +1439,6 @@ static struct TokenInfo editor_setup_tokens[] = static struct TokenInfo shortcut_setup_tokens[] = { - /* shortcut setup */ { TYPE_KEY_X11, &ssi.save_game, "shortcut.save_game" }, { TYPE_KEY_X11, &ssi.load_game, "shortcut.load_game" }, { TYPE_KEY_X11, &ssi.toggle_pause, "shortcut.toggle_pause" } @@ -1435,7 +1446,6 @@ static struct TokenInfo shortcut_setup_tokens[] = static struct TokenInfo player_setup_tokens[] = { - /* player setup */ { TYPE_BOOLEAN, &sii.use_joystick, ".use_joystick" }, { TYPE_STRING, &sii.joy.device_name, ".joy.device_name" }, { TYPE_INTEGER, &sii.joy.xleft, ".joy.xleft" }, @@ -1454,6 +1464,17 @@ static struct TokenInfo player_setup_tokens[] = { TYPE_KEY_X11, &sii.key.bomb, ".key.place_bomb" } }; +static struct TokenInfo system_setup_tokens[] = +{ + { TYPE_STRING, &syi.sdl_audiodriver, "system.sdl_audiodriver" }, + { TYPE_INTEGER, &syi.audio_fragment_size,"system.audio_fragment_size" } +}; + +static struct TokenInfo options_setup_tokens[] = +{ + { TYPE_BOOLEAN, &soi.verbose, "options.verbose" } +}; + static void setSetupInfoToDefaults(struct SetupInfo *si) { int i; @@ -1518,6 +1539,11 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->input[i].key.snap = (i == 0 ? DEFAULT_KEY_SNAP : KSYM_UNDEFINED); si->input[i].key.bomb = (i == 0 ? DEFAULT_KEY_BOMB : KSYM_UNDEFINED); } + + si->system.sdl_audiodriver = getStringCopy(ARG_DEFAULT); + si->system.audio_fragment_size = DEFAULT_AUDIO_FRAGMENT_SIZE; + + si->options.verbose = FALSE; } static void decodeSetupFileList(struct SetupFileList *setup_file_list) @@ -1566,6 +1592,20 @@ static void decodeSetupFileList(struct SetupFileList *setup_file_list) } setup.input[pnr] = sii; } + + /* system setup */ + syi = setup.system; + for (i=0; i