X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fmain.c;h=b72a521ca7588a236d1c112e457048071ef1b421;hp=496a86c9e8d2ed1ad97377e731724982bb5b09be;hb=b73db12a3fa161e71414e0f2cde126f2e860b079;hpb=3f1999929dd6662da92c8f1b20c2fcbbce0c0ed7 diff --git a/src/main.c b/src/main.c index 496a86c9..b72a521c 100644 --- a/src/main.c +++ b/src/main.c @@ -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; @@ -69,6 +70,7 @@ int GfxFrame[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxRandom[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxRandomStatic[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxElement[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; +int GfxElementEmpty[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxAction[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxRedraw[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; @@ -176,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; // ---------------------------------------------------------------------------- @@ -7294,6 +7297,16 @@ struct ElementNameInfo element_name_info[MAX_NUM_ELEMENTS + 1] = "internal", "hide group elements" }, + { + "internal_cascade_es", + "internal", + "show empty space elements" + }, + { + "internal_cascade_es.active", + "internal", + "hide empty space elements" + }, { "internal_cascade_ref", "internal", @@ -7483,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, }, @@ -7501,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, }, @@ -7512,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, }, @@ -7694,7 +7710,7 @@ static void print_usage(void) "\n" "Options:\n" " -b, --basepath DIRECTORY alternative base DIRECTORY\n" - " -l, --level DIRECTORY alternative level DIRECTORY\n" + " -l, --levels DIRECTORY alternative levels DIRECTORY\n" " -g, --graphics DIRECTORY alternative graphics DIRECTORY\n" " -s, --sounds DIRECTORY alternative sounds DIRECTORY\n" " -m, --music DIRECTORY alternative music DIRECTORY\n" @@ -7783,9 +7799,6 @@ static void InitProgramConfig(char *command_filename) char *config_filename = getProgramConfigFilename(command_filename); char *userdata_basename = getBaseNameNoSuffix(command_filename); char *userdata_subdir; -#if defined(PLATFORM_UNIX) - char *userdata_subdir_unix; -#endif // read default program config, if existing if (fileExists(config_filename)) @@ -7803,11 +7816,6 @@ static void InitProgramConfig(char *command_filename) LoadSetupFromFilename(config_filename); } -#if defined(PLATFORM_UNIX) - // set user data directory for Linux/Unix (but not Mac OS X) - userdata_subdir_unix = getStringCat2(".", userdata_basename); -#endif - // set program title from potentially redefined program title if (setup.internal.program_title != NULL && strlen(setup.internal.program_title) > 0) @@ -7823,10 +7831,10 @@ 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_WINDOWS) || defined(PLATFORM_MAC) || defined(PLATFORM_EMSCRIPTEN) userdata_subdir = program_title; #elif defined(PLATFORM_UNIX) - userdata_subdir = userdata_subdir_unix; + userdata_subdir = getStringCat2(".", userdata_basename); #else userdata_subdir = USERDATA_DIRECTORY_OTHER; #endif