replaced stop/play buttons in game panel with save/load buttons
[rocksndiamonds.git] / src / tape.c
index ded004fc2a16eb33227a455383fa9f47aa754dee..efc8bcb4c26eca3fdf8189470d00319dbdb0dc02 100644 (file)
@@ -739,15 +739,21 @@ void TapeTogglePause(boolean toggle_manual)
 
       TapeAppendRecording();
 
-      if (!CheckEngineSnapshot())
+      if (!CheckEngineSnapshotSingle())
        SaveEngineSnapshotSingle();
+
+      // restart step/move snapshots after quick loading tape
+      SaveEngineSnapshotToListInitial();
     }
   }
 
-  if (tape.pausing)
-    MapUndoRedoButtons();
-  else if (!tape.single_step)
-    MapStopPlayButtons();
+  if (CheckEngineSnapshotList())
+  {
+    if (tape.pausing)
+      MapUndoRedoButtons();
+    else if (!tape.single_step)
+      UnmapUndoRedoButtons();
+  }
 }
 
 void TapeStartPlaying()
@@ -1032,7 +1038,7 @@ void TapeQuickLoad()
   if (game_status != GAME_MODE_PLAYING && game_status != GAME_MODE_MAIN)
     return;
 
-  if (CheckEngineSnapshot())
+  if (CheckEngineSnapshotSingle())
   {
     TapeStartGamePlaying();
 
@@ -1046,6 +1052,9 @@ void TapeQuickLoad()
     TapeStopWarpForward();
     TapeAppendRecording();
 
+    // restart step/move snapshots after quick loading tape
+    SaveEngineSnapshotToListInitial();
+
     if (FrameCounter > 0)
       return;
   }