re-added file "RocksBusy.ilbm" (that was accidentally deleted)
[rocksndiamonds.git] / src / tape.c
index fa73f3f99c64b43c55421faba707a68cdc5caa82..689f2bf2e0dfbae9fdeacaed1392a639da5c282a 100644 (file)
@@ -600,7 +600,7 @@ void TapeStartRecording(int random_seed)
 
 static void TapeStartGameRecording()
 {
-  StartGameActions(options.network, TRUE, level.random_seed);
+  StartGameActions(network.enabled, TRUE, level.random_seed);
 }
 
 static void TapeAppendRecording()
@@ -979,7 +979,7 @@ static void TapeStopWarpForward()
 
 static void TapeSingleStep()
 {
-  if (options.network)
+  if (network.enabled)
     return;
 
   if (!tape.pausing)
@@ -1079,12 +1079,18 @@ void TapeQuickLoad()
   }
 }
 
-boolean InsertSolutionTape()
+boolean hasSolutionTape()
 {
+  boolean tape_file_exists = fileExists(getSolutionTapeFilename(level_nr));
   boolean level_has_tape = (level.game_engine_type == GAME_ENGINE_TYPE_SP &&
                            level.native_sp_level->demo.is_available);
 
-  if (!fileExists(getSolutionTapeFilename(level_nr)) && !level_has_tape)
+  return (tape_file_exists || level_has_tape);
+}
+
+boolean InsertSolutionTape()
+{
+  if (!hasSolutionTape())
   {
     Request("No solution tape for this level!", REQ_CONFIRM);
 
@@ -1311,7 +1317,8 @@ void CreateTapeButtons()
 
   for (i = 0; i < NUM_TAPE_BUTTONS; i++)
   {
-    struct GraphicInfo *gfx = &graphic_info[tapebutton_info[i].graphic];
+    int graphic = tapebutton_info[i].graphic;
+    struct GraphicInfo *gfx = &graphic_info[graphic];
     struct XY *pos = tapebutton_info[i].pos;
     struct GadgetInfo *gi;
     int gd_x = gfx->src_x;
@@ -1321,6 +1328,7 @@ void CreateTapeButtons()
     int id = i;
 
     gi = CreateGadget(GDI_CUSTOM_ID, id,
+                     GDI_IMAGE_ID, graphic,
                      GDI_INFO_TEXT, tapebutton_info[i].infotext,
                      GDI_X, VX + pos->x,
                      GDI_Y, VY + pos->y,