fixed cave flashing on open outbox for non-black cave background color
[rocksndiamonds.git] / src / files.c
index c3f5cf7477eb9bff10eadd1cb693fbd543816b62..ad0686319b94adfa80143698cd0233df7ad0bd41 100644 (file)
@@ -4644,9 +4644,14 @@ static void CopyNativeLevel_BD_to_RND(struct LevelInfo *level)
   SetDefaultLevelColors_BD();
 
   // level name
-  char *cave_name = getStringPrint("%s / %d", cave->name, bd_level_nr + 1);
+  char *cave_name_latin1 = getLatin1FromUTF8(cave->name);
+  char *cave_name_final;
+  if (gd_caveset_has_levels())
+    cave_name_final = getStringPrint("%s / %d", cave_name_latin1, bd_level_nr + 1);
+  else
+    cave_name_final = getStringCopy(cave_name_latin1);
 
-  strncpy(level->name, cave_name, MAX_LEVEL_NAME_LEN);
+  strncpy(level->name, cave_name_final, MAX_LEVEL_NAME_LEN);
   level->name[MAX_LEVEL_NAME_LEN] = '\0';
 
   // playfield elements
@@ -4654,7 +4659,8 @@ static void CopyNativeLevel_BD_to_RND(struct LevelInfo *level)
     for (y = 0; y < level->fieldy; y++)
       level->field[x][y] = CAVE_TO_LEVEL(cave->map[y][x]);
 
-  checked_free(cave_name);
+  checked_free(cave_name_latin1);
+  checked_free(cave_name_final);
 }
 
 static void setTapeInfoToDefaults(void);
@@ -11706,10 +11712,10 @@ static void setSetupInfoToDefaults(struct SetupInfo *si)
   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;