X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsetup.c;h=0cad9d8c4c0b087da76e21502c5c641c511158c1;hp=6b10a51ec9d4d7248eb6ad54eee66a65433c9c6f;hb=df4dc8e0755fb2d7f651ce31aff28bc51cc8034a;hpb=bb25415fd6f5e11fae7b8a0be578e403c8a27594 diff --git a/src/libgame/setup.c b/src/libgame/setup.c index 6b10a51e..0cad9d8c 100644 --- a/src/libgame/setup.c +++ b/src/libgame/setup.c @@ -818,9 +818,34 @@ char *getHelpTextFilename(void) return filename; } -char *getLevelSetInfoFilename(void) +static char *getLevelSetInfoBasename(int nr) { + static char basename[32]; + + sprintf(basename, "levelset_%d.txt", nr + 1); + + return basename; +} + +char *getLevelSetInfoFilename(int nr) +{ + char *basename = getLevelSetInfoBasename(nr); + static char *info_subdir = NULL; static char *filename = NULL; + + if (info_subdir == NULL) + info_subdir = getPath2(DOCS_DIRECTORY, LEVELSET_INFO_DIRECTORY); + + checked_free(filename); + + // look for level set info file the current level set directory + filename = getPath3(getCurrentLevelDir(), info_subdir, basename); + if (fileExists(filename)) + return filename; + + if (nr > 0) + return NULL; + char *basenames[] = { "README",