removed redundant code ('if' and 'else' block with identical code)
[rocksndiamonds.git] / src / game.c
index f17eb32359f76fccb2c1e25371125322ae9d1b26..d35a369543620796da268b97b134be3a6ba0c4c9 100644 (file)
 #define DEBUG_INIT_PLAYER      1
 #define DEBUG_PLAYER_ACTIONS   0
 
-// test element position in level set "test_gfxframe" / level "000"
-#define DEBUG_GFXFRAME_X       11
-#define DEBUG_GFXFRAME_Y       9
-
 /* EXPERIMENTAL STUFF */
 #define USE_NEW_AMOEBA_CODE    FALSE
 
@@ -3095,11 +3091,6 @@ void InitGame()
   int initial_move_dir = MV_DOWN;
   int i, j, x, y;
 
-#if 1
-  printf("::: game.graphics_engine_version == %d\n",
-        game.graphics_engine_version);
-#endif
-
   // required here to update video display before fading (FIX THIS)
   DrawMaskedBorder(REDRAW_DOOR_2);
 
@@ -3395,10 +3386,6 @@ void InitGame()
     GfxRedraw[x][y] = GFX_REDRAW_NONE;
   }
 
-#if 1
-  printf("::: INIT GAME");
-#endif
-
   SCAN_PLAYFIELD(x, y)
   {
     if (emulate_bd && !IS_BD_ELEMENT(Feld[x][y]))
@@ -3413,10 +3400,6 @@ void InitGame()
     ResetGfxAnimation(x, y);
   }
 
-#if 1
-  printf(" -> %d\n", GfxFrame[DEBUG_GFXFRAME_X][DEBUG_GFXFRAME_Y]);
-#endif
-
   InitBeltMovement();
 
   for (i = 0; i < MAX_PLAYERS; i++)
@@ -4445,8 +4428,6 @@ void GameEnd()
 
   if (!local_player->LevelSolved_SaveScore)
   {
-    FadeOut(REDRAW_FIELD);
-
     game_status = GAME_MODE_MAIN;
 
     DrawMainMenu();
@@ -4478,8 +4459,6 @@ void GameEnd()
   }
   else
   {
-    FadeOut(REDRAW_FIELD);
-
     game_status = GAME_MODE_MAIN;
 
     if (raise_level)
@@ -4616,11 +4595,6 @@ static void ResetGfxAnimation(int x, int y)
   GfxFrame[x][y] = 0;
 
   ResetGfxFrame(x, y, FALSE);
-
-#if 1
-  if (x == DEBUG_GFXFRAME_X && y == DEBUG_GFXFRAME_Y)
-    printf(" (RESET_GFX_ANIM)");
-#endif
 }
 
 static void ResetRandomAnimationValue(int x, int y)
@@ -4924,81 +4898,40 @@ void DrawRelocateScreen(int old_x, int old_y, int x, int y, int move_dir,
   }
   else if (quick_relocation)
   {
-    if (!IN_VIS_FIELD(SCREENX(x), SCREENY(y)) || center_screen)
+    if (!level.shifted_relocation || center_screen)
     {
-      if (!level.shifted_relocation || center_screen)
-      {
-       /* quick relocation (without scrolling), with centering of screen */
-
-       scroll_x = (x < SBX_Left  + MIDPOSX ? SBX_Left :
-                   x > SBX_Right + MIDPOSX ? SBX_Right :
-                   x - MIDPOSX);
-
-       scroll_y = (y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                   y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                   y - MIDPOSY);
-      }
-      else
-      {
-       /* quick relocation (without scrolling), but do not center screen */
-
-       int center_scroll_x = (old_x < SBX_Left  + MIDPOSX ? SBX_Left :
-                              old_x > SBX_Right + MIDPOSX ? SBX_Right :
-                              old_x - MIDPOSX);
-
-       int center_scroll_y = (old_y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                              old_y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                              old_y - MIDPOSY);
+      /* quick relocation (without scrolling), with centering of screen */
 
-       int offset_x = x + (scroll_x - center_scroll_x);
-       int offset_y = y + (scroll_y - center_scroll_y);
+      scroll_x = (x < SBX_Left  + MIDPOSX ? SBX_Left :
+                 x > SBX_Right + MIDPOSX ? SBX_Right :
+                 x - MIDPOSX);
 
-       scroll_x = (offset_x < SBX_Left  + MIDPOSX ? SBX_Left :
-                   offset_x > SBX_Right + MIDPOSX ? SBX_Right :
-                   offset_x - MIDPOSX);
-
-       scroll_y = (offset_y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                   offset_y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                   offset_y - MIDPOSY);
-      }
+      scroll_y = (y < SBY_Upper + MIDPOSY ? SBY_Upper :
+                 y > SBY_Lower + MIDPOSY ? SBY_Lower :
+                 y - MIDPOSY);
     }
     else
     {
-      if (!level.shifted_relocation || center_screen)
-      {
-       /* quick relocation (without scrolling), with centering of screen */
-
-       scroll_x = (x < SBX_Left  + MIDPOSX ? SBX_Left :
-                   x > SBX_Right + MIDPOSX ? SBX_Right :
-                   x - MIDPOSX);
+      /* quick relocation (without scrolling), but do not center screen */
 
-       scroll_y = (y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                   y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                   y - MIDPOSY);
-      }
-      else
-      {
-       /* quick relocation (without scrolling), but do not center screen */
-
-       int center_scroll_x = (old_x < SBX_Left  + MIDPOSX ? SBX_Left :
-                              old_x > SBX_Right + MIDPOSX ? SBX_Right :
-                              old_x - MIDPOSX);
+      int center_scroll_x = (old_x < SBX_Left  + MIDPOSX ? SBX_Left :
+                            old_x > SBX_Right + MIDPOSX ? SBX_Right :
+                            old_x - MIDPOSX);
 
-       int center_scroll_y = (old_y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                              old_y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                              old_y - MIDPOSY);
+      int center_scroll_y = (old_y < SBY_Upper + MIDPOSY ? SBY_Upper :
+                            old_y > SBY_Lower + MIDPOSY ? SBY_Lower :
+                            old_y - MIDPOSY);
 
-       int offset_x = x + (scroll_x - center_scroll_x);
-       int offset_y = y + (scroll_y - center_scroll_y);
+      int offset_x = x + (scroll_x - center_scroll_x);
+      int offset_y = y + (scroll_y - center_scroll_y);
 
-       scroll_x = (offset_x < SBX_Left  + MIDPOSX ? SBX_Left :
-                   offset_x > SBX_Right + MIDPOSX ? SBX_Right :
-                   offset_x - MIDPOSX);
+      scroll_x = (offset_x < SBX_Left  + MIDPOSX ? SBX_Left :
+                 offset_x > SBX_Right + MIDPOSX ? SBX_Right :
+                 offset_x - MIDPOSX);
 
-       scroll_y = (offset_y < SBY_Upper + MIDPOSY ? SBY_Upper :
-                   offset_y > SBY_Lower + MIDPOSY ? SBY_Lower :
-                   offset_y - MIDPOSY);
-      }
+      scroll_y = (offset_y < SBY_Upper + MIDPOSY ? SBY_Upper :
+                 offset_y > SBY_Lower + MIDPOSY ? SBY_Lower :
+                 offset_y - MIDPOSY);
     }
 
     RedrawPlayfield();
@@ -10018,11 +9951,6 @@ static void CreateFieldExt(int x, int y, int element, boolean is_change)
     ResetGfxAnimation(x, y);
     ResetRandomAnimationValue(x, y);
 
-#if 0
-  if (x == DEBUG_GFXFRAME_X && y == DEBUG_GFXFRAME_Y)
-    printf(" (RESET X)");
-#endif
-
     TEST_DrawLevelField(x, y);
 
     if (GFX_CRUMBLED(new_element))
@@ -10293,10 +10221,9 @@ static void HandleElementChange(int x, int y, int page)
        be drawn instead of the correct frames 0,1,2,3. This is caused by
        "GfxFrame[][]" being reset *twice* (in two successive frames) after
        an element change: First when the change delay ("ChangeDelay[][]")
-       counter has reached zero after decrementing (see "RESET 1" below),
-       then a second time in the next frame (after "GfxFrame[][]" was
-       already incremented) when "ChangeDelay[][]" is reset to the initial
-       delay value again (see "RESET 2" below).
+       counter has reached zero after decrementing, then a second time in
+       the next frame (after "GfxFrame[][]" was already incremented) when
+       "ChangeDelay[][]" is reset to the initial delay value again.
 
        This causes frame 0 to be drawn twice, while the last frame won't
        be drawn anymore, resulting in the wrong frame sequence 0,0,1,2.
@@ -10327,12 +10254,6 @@ static void HandleElementChange(int x, int y, int page)
       {
        ResetGfxAnimation(x, y);
        ResetRandomAnimationValue(x, y);
-
-#if 1
-       if (x == DEBUG_GFXFRAME_X && y == DEBUG_GFXFRAME_Y)
-         printf(" (RESET 2)");
-#endif
-
       }
 
       if (change->pre_change_function)
@@ -10387,12 +10308,6 @@ static void HandleElementChange(int x, int y, int page)
        if (change->post_change_function)
          change->post_change_function(x, y);
       }
-
-#if 1
-      if (x == DEBUG_GFXFRAME_X && y == DEBUG_GFXFRAME_Y)
-       printf(" (RESET 1)");
-#endif
-
     }
 
     if (change->has_action && !handle_action_before_change)
@@ -11469,10 +11384,6 @@ void GameActions_RND()
     }
   }
 
-#if 1
-  printf("::: %d", GfxFrame[DEBUG_GFXFRAME_X][DEBUG_GFXFRAME_Y]);
-#endif
-
   SCAN_PLAYFIELD(x, y)
   {
     ChangeCount[x][y] = 0;
@@ -11545,10 +11456,6 @@ void GameActions_RND()
 #endif
   }
 
-#if 1
-  printf(" -> %d", GfxFrame[DEBUG_GFXFRAME_X][DEBUG_GFXFRAME_Y]);
-#endif
-
   SCAN_PLAYFIELD(x, y)
   {
     element = Feld[x][y];
@@ -11691,10 +11598,6 @@ void GameActions_RND()
     }
   }
 
-#if 1
-  printf(" -> %d\n", GfxFrame[DEBUG_GFXFRAME_X][DEBUG_GFXFRAME_Y]);
-#endif
-
 #if USE_NEW_AMOEBA_CODE
   /* new experimental amoeba growth stuff */
   if (!(FrameCounter % 8))