}
}
+boolean isLevelsetFilename_BD(char *filename)
+{
+ return (strSuffixLower(filename, ".bd") ||
+ strSuffixLower(filename, ".bdr") ||
+ strSuffixLower(filename, ".brc") ||
+ strSuffixLower(filename, ".gds"));
+}
+
static boolean checkForPackageFromBasename_BD(char *basename)
{
// check for native BD level file extensions
- if (!strSuffixLower(basename, ".bd") &&
- !strSuffixLower(basename, ".bdr") &&
- !strSuffixLower(basename, ".brc") &&
- !strSuffixLower(basename, ".gds"))
+ if (!isLevelsetFilename_BD(basename))
return FALSE;
// check for standard single-level BD files (like "001.bd")
CloseAllAndExit(0);
}
+void DumpLevelsetFromFilename_BD(char *filename)
+{
+ if (leveldir_current == NULL) // no levelsets loaded yet
+ bd_open_all();
+
+ if (!LoadNativeLevel_BD(filename, 0, FALSE))
+ CloseAllAndExit(0); // function has already printed warning
+
+ PrintLine("-", 79);
+ Print("Levelset '%s'\n", filename);
+ PrintLine("-", 79);
+
+ DumpLevelset_BD();
+
+ PrintLine("-", 79);
+
+ CloseAllAndExit(0);
+}
+
+void DumpLevelset(void)
+{
+ static LevelDirTree *dumplevelset_leveldir = NULL;
+
+ dumplevelset_leveldir = getTreeInfoFromIdentifier(leveldir_first,
+ global.dumplevelset_leveldir);
+ if (dumplevelset_leveldir == NULL)
+ Fail("no such level identifier: '%s'", global.dumplevelset_leveldir);
+
+ PrintLine("-", 79);
+ Print("Levelset '%s'\n", dumplevelset_leveldir->identifier);
+ PrintLine("-", 79);
+
+ Print("Number of levels: %d\n", dumplevelset_leveldir->levels);
+ Print("First level number: %d\n", dumplevelset_leveldir->first_level);
+
+ PrintLine("-", 79);
+
+ CloseAllAndExit(0);
+}
+
// ============================================================================
// tape file functions
si->bd_skip_hatching = FALSE;
si->bd_scroll_delay = TRUE;
si->bd_show_invisible_outbox = FALSE;
- si->bd_smooth_movements = STATE_AUTO;
+ si->bd_smooth_movements = STATE_TRUE;
si->bd_pushing_graphics = STATE_TRUE;
si->bd_up_down_graphics = STATE_TRUE;
- si->bd_skip_falling_sounds = STATE_AUTO;
+ si->bd_skip_falling_sounds = STATE_TRUE;
si->bd_palette_c64 = GD_DEFAULT_PALETTE_C64;
si->bd_palette_c64dtv = GD_DEFAULT_PALETTE_C64DTV;
si->bd_palette_atari = GD_DEFAULT_PALETTE_ATARI;