added centering levels that are smaller than the playfield (MM engine)
[rocksndiamonds.git] / src / files.c
index 3be804a701c80da26ed2a40b859d9b7c801a373e..497d12c87f8941ee063762c3dda96738adad977c 100644 (file)
@@ -8081,18 +8081,18 @@ void SaveTape(int nr)
   tape.changed = FALSE;
 }
 
-boolean SaveTapeChecked(int nr)
+static boolean SaveTapeCheckedExt(int nr, char *msg_replace, char *msg_saved)
 {
   char *filename = getTapeFilename(nr);
   boolean new_tape = !fileExists(filename);
   boolean tape_saved = FALSE;
 
-  if (new_tape || Request("Replace old tape?", REQ_ASK))
+  if (new_tape || Request(msg_replace, REQ_ASK))
   {
     SaveTape(nr);
 
     if (new_tape)
-      Request("Tape saved!", REQ_CONFIRM);
+      Request(msg_saved, REQ_CONFIRM);
 
     tape_saved = TRUE;
   }
@@ -8100,6 +8100,17 @@ boolean SaveTapeChecked(int nr)
   return tape_saved;
 }
 
+boolean SaveTapeChecked(int nr)
+{
+  return SaveTapeCheckedExt(nr, "Replace old tape?", "Tape saved!");
+}
+
+boolean SaveTapeChecked_LevelSolved(int nr)
+{
+  return SaveTapeCheckedExt(nr, "Level solved! Replace old tape?",
+                               "Level solved! Tape saved!");
+}
+
 void DumpTape(struct TapeInfo *tape)
 {
   int tape_frame_counter;
@@ -9756,6 +9767,7 @@ static void LoadMenuDesignSettingsFromFilename(char *filename)
     char *value_2 = getHashEntry(setup_file_hash,"menu.headline1_spacing.INFO");
     char *value_3 = getHashEntry(setup_file_hash,"menu.headline2_spacing.INFO");
     char *value_4 = getHashEntry(setup_file_hash,"menu.line_spacing.INFO");
+    char *value_5 = getHashEntry(setup_file_hash,"menu.extra_spacing.INFO");
 
     if (value_1 != NULL)
       menu.paragraph_spacing_info[i] = get_integer_from_string(value_1);
@@ -9765,6 +9777,8 @@ static void LoadMenuDesignSettingsFromFilename(char *filename)
       menu.headline2_spacing_info[i] = get_integer_from_string(value_3);
     if (value_4 != NULL)
       menu.line_spacing_info[i] = get_integer_from_string(value_4);
+    if (value_5 != NULL)
+      menu.extra_spacing_info[i] = get_integer_from_string(value_5);
   }
 
   /* special case: initialize with default values that may be overwritten */