changed logic and defaults for falling element sounds in BD engine
[rocksndiamonds.git] / src / game_bd / main_bd.c
index 06ecfd0458fa7cea799a9fe044236b56122a75b9..574edc3f3eeaef91434e3058239fd613c8caab82 100644 (file)
@@ -255,20 +255,28 @@ int getTimeLeft_BD(void)
   return 0;
 }
 
+void SetTimeFrames_BD(int frames_played)
+{
+  // needed to store final time after solving game (before counting down remaining time)
+  if (game_bd.game->state_counter == GAME_INT_CAVE_RUNNING)
+    game_bd.frames_played = frames_played;
+
+}
+
 static void UpdateGameDoorValues_BD(void)
 {
   GdCave *cave = game_bd.game->cave;
-  int time_secs = gd_cave_time_show(cave, cave->time);
+  int time_left = gd_cave_time_show(cave, cave->time);
   int gems_still_needed = MAX(0, (cave->diamonds_needed - cave->diamonds_collected));
 
-  game_bd.time_played = time_secs;
+  game_bd.time_left = time_left;
   game_bd.gems_still_needed = gems_still_needed;
   game_bd.score = game_bd.game->player_score;
 
   if (game.LevelSolved)
   {
     // update time and score in panel while counting bonus time
-    game.LevelSolved_CountingTime  = game_bd.time_played;
+    game.LevelSolved_CountingTime  = game_bd.time_left;
     game.LevelSolved_CountingScore = game_bd.score;
   }
 }
@@ -320,10 +328,6 @@ void InitGameEngine_BD(void)
   game_bd.game_over = FALSE;
   game_bd.cover_screen = FALSE;
 
-  game_bd.time_played = 0;
-  game_bd.gems_still_needed = 0;
-  game_bd.score = 0;
-
   gd_caveset_last_selected       = native_bd_level.cave_nr;
   gd_caveset_last_selected_level = native_bd_level.level_nr;
 
@@ -470,11 +474,11 @@ boolean use_bd_up_down_graphics(void)
          (setup.bd_up_down_graphics == STATE_AUTO && !use_native_bd_graphics_engine()));
 }
 
-// check if skipping falling sounds selected in setup menu
-boolean skip_bd_falling_sounds(void)
+// check if element falling sounds selected in setup menu
+boolean use_bd_falling_sounds(void)
 {
-  return ((setup.bd_skip_falling_sounds == STATE_TRUE) ||
-         (setup.bd_skip_falling_sounds == STATE_AUTO && !game.use_native_bd_sound_engine));
+  return ((setup.bd_falling_sounds == STATE_TRUE) ||
+         (setup.bd_falling_sounds == STATE_AUTO && game.use_native_bd_sound_engine));
 }
 
 Bitmap **GetTitleScreenBitmaps_BD(void)