added reading optional platform setup file
[rocksndiamonds.git] / src / main.c
index 47bd787f03a2ac097018b929f61dfa877730c5db..3ef3df989bd6e5380d6ce39a64db2bf9b4b23fab 100644 (file)
@@ -32,6 +32,7 @@ DrawBuffer           *drawto_field;
 int                    game_status = -1;
 int                    game_status_last_screen = -1;
 boolean                        level_editor_test_game = FALSE;
+boolean                        score_info_tape_play = FALSE;
 boolean                        network_playing = FALSE;
 
 int                    key_joystick_mapping = 0;
@@ -177,6 +178,7 @@ SetupFileHash              *element_token_hash = NULL;
 SetupFileHash         *graphic_token_hash = NULL;
 SetupFileHash         *font_token_hash = NULL;
 SetupFileHash         *hide_setup_hash = NULL;
+SetupFileHash         *anim_url_hash = NULL;
 
 
 // ----------------------------------------------------------------------------
@@ -7494,6 +7496,7 @@ struct ElementDirectionInfo element_direction_info[NUM_DIRECTIONS_FULL + 1] =
 struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] =
 {
   { ".[DEFAULT]",              GFX_SPECIAL_ARG_DEFAULT,                },
+  { ".LOADING_INITIAL",                GFX_SPECIAL_ARG_LOADING_INITIAL,        },
   { ".LOADING",                        GFX_SPECIAL_ARG_LOADING,                },
   { ".TITLE_INITIAL",          GFX_SPECIAL_ARG_TITLE_INITIAL,          },
   { ".TITLE_INITIAL_1",                GFX_SPECIAL_ARG_TITLE_INITIAL_1,        },
@@ -7512,6 +7515,7 @@ struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] =
   { ".LEVELS",                 GFX_SPECIAL_ARG_LEVELS                  },
   { ".LEVELNR",                        GFX_SPECIAL_ARG_LEVELNR                 },
   { ".SCORES",                 GFX_SPECIAL_ARG_SCORES,                 },
+  { ".SCOREINFO",              GFX_SPECIAL_ARG_SCOREINFO,              },
   { ".EDITOR",                 GFX_SPECIAL_ARG_EDITOR,                 },
   { ".INFO",                   GFX_SPECIAL_ARG_INFO,                   },
   { ".SETUP",                  GFX_SPECIAL_ARG_SETUP,                  },
@@ -7523,6 +7527,7 @@ struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] =
   { ".CRUMBLED",               GFX_SPECIAL_ARG_CRUMBLED,               },
   { ".MAINONLY",               GFX_SPECIAL_ARG_MAINONLY,               },
   { ".NAMESONLY",              GFX_SPECIAL_ARG_NAMESONLY,              },
+  { ".SCORESONLY",             GFX_SPECIAL_ARG_SCORESONLY,             },
   { ".TYPENAME",               GFX_SPECIAL_ARG_TYPENAME,               },
   { ".TYPENAMES",              GFX_SPECIAL_ARG_TYPENAMES,              },
   { ".SUBMENU",                        GFX_SPECIAL_ARG_SUBMENU,                },
@@ -7834,7 +7839,7 @@ static void InitProgramConfig(char *command_filename)
       strlen(setup.internal.program_icon_file) > 0)
     program_icon_file = getStringCopy(setup.internal.program_icon_file);
 
-#if defined(PLATFORM_WIN32) || defined(PLATFORM_MACOSX)
+#if defined(PLATFORM_WIN32) || defined(PLATFORM_MACOSX) || defined(PLATFORM_EMSCRIPTEN)
   userdata_subdir = program_title;
 #elif defined(PLATFORM_UNIX)
   userdata_subdir = userdata_subdir_unix;