rnd-20140514-2-src
[rocksndiamonds.git] / src / cartoons.c
index ee56a8df3fe7fff10513604830261190f23f72f9..1f430493f64334296300851c3f479f078fa7c8f7 100644 (file)
@@ -23,15 +23,21 @@ static struct ToonInfo toons[MAX_NUM_TOONS];
 
 static void PrepareBackbuffer()
 {
-  if (game_status == GAME_MODE_PLAYING &&
-      level.game_engine_type == GAME_ENGINE_TYPE_EM)
+  if (game_status != GAME_MODE_PLAYING)
+    return;
+
+#if 1
+  BlitScreenToBitmap(backbuffer);
+#else
+  if (level.game_engine_type == GAME_ENGINE_TYPE_EM)
   {
     BlitScreenToBitmap_EM(backbuffer);
-
-    return;
   }
-
-  if (setup.soft_scrolling && game_status == GAME_MODE_PLAYING)
+  else if (level.game_engine_type == GAME_ENGINE_TYPE_SP)
+  {
+    BlitScreenToBitmap_SP(backbuffer);
+  }
+  else if (setup.soft_scrolling)       /* GAME_ENGINE_TYPE_RND */
   {
     int fx = FX, fy = FY;
 
@@ -40,6 +46,7 @@ static void PrepareBackbuffer()
 
     BlitBitmap(fieldbuffer, backbuffer, fx, fy, SXSIZE, SYSIZE, SX, SY);
   }
+#endif
 }
 
 boolean ToonNeedsRedraw()
@@ -80,7 +87,11 @@ void InitToons()
     toons[i].position = image->parameter[GFX_ARG_POSITION];
   }
 
+#if 1
+  InitToonScreen(bitmap_db_toons,
+#else
   InitToonScreen(bitmap_db_door,
+#endif
                 BackToFront, PrepareBackbuffer, ToonNeedsRedraw,
                 toons, num_toons,
                 REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE,