removed unneeded spaces in request texts
[rocksndiamonds.git] / src / game_mm / mm_game.c
index 96be05c4f977ec5c56f52d8eed335ed0d85f862e..8e45cfb8da103fe66817e20deaba290ff3a2d47a 100644 (file)
@@ -357,7 +357,7 @@ static boolean CheckLaserPixel(int x, int y)
   return (pixel == WHITE_PIXEL);
 }
 
-static void CheckExitMM()
+static void CheckExitMM(void)
 {
   int exit_element = EL_EMPTY;
   int exit_x = 0;
@@ -517,7 +517,7 @@ static void InitField(int x, int y, boolean init_game)
   }
 }
 
-static void InitCycleElements_RotateSingleStep()
+static void InitCycleElements_RotateSingleStep(void)
 {
   int i;
 
@@ -542,7 +542,7 @@ static void InitCycleElements_RotateSingleStep()
   }
 }
 
-static void InitLaser()
+static void InitLaser(void)
 {
   int start_element = Feld[laser.start_edge.x][laser.start_edge.y];
   int step = (IS_LASER(start_element) ? 4 : 0);
@@ -580,7 +580,7 @@ static void InitLaser()
                            native_mm_level.laser_blue  * 0xFF);
 }
 
-void InitGameEngine_MM()
+void InitGameEngine_MM(void)
 {
   int i, x, y;
 
@@ -667,7 +667,7 @@ void InitGameEngine_MM()
   DrawLevel_MM();
 }
 
-void InitGameActions_MM()
+void InitGameActions_MM(void)
 {
   int num_init_game_frames = INIT_GAME_ACTIONS_DELAY;
   int cycle_steps_done = 0;
@@ -751,15 +751,18 @@ void InitGameActions_MM()
 
 void AddLaserEdge(int lx, int ly)
 {
-  if (lx < -2 || ly < -2 || lx >= SXSIZE + 2 || ly >= SYSIZE + 2)
+  int clx = dSX + lx;
+  int cly = dSY + ly;
+
+  if (clx < -2 || cly < -2 || clx >= SXSIZE + 2 || cly >= SYSIZE + 2)
   {
     Error(ERR_WARN, "AddLaserEdge: out of bounds: %d, %d", lx, ly);
 
     return;
   }
 
-  laser.edge[laser.num_edges].x = SX + 2 + lx;
-  laser.edge[laser.num_edges].y = SY + 2 + ly;
+  laser.edge[laser.num_edges].x = cSX2 + lx;
+  laser.edge[laser.num_edges].y = cSY2 + ly;
   laser.num_edges++;
 
   laser.redraw = TRUE;
@@ -775,14 +778,14 @@ void AddDamagedField(int ex, int ey)
   laser.num_damages++;
 }
 
-boolean StepBehind()
+static boolean StepBehind(void)
 {
   if (laser.num_edges)
   {
     int x = LX - XS;
     int y = LY - YS;
-    int last_x = laser.edge[laser.num_edges - 1].x - SX - 2;
-    int last_y = laser.edge[laser.num_edges - 1].y - SY - 2;
+    int last_x = laser.edge[laser.num_edges - 1].x - cSX2;
+    int last_y = laser.edge[laser.num_edges - 1].y - cSY2;
 
     return ((x - last_x) * XS < 0 || (y - last_y) * YS < 0);
   }
@@ -802,7 +805,7 @@ static int getMaskFromElement(int element)
     return IMG_MM_MASK_CIRCLE;
 }
 
-int ScanPixel()
+static int ScanPixel(void)
 {
   int hit_mask = 0;
 
@@ -860,8 +863,8 @@ int ScanPixel()
       }
       else
       {
-       pixel = (SX + px < REAL_SX || SX + px >= REAL_SX + FULL_SXSIZE ||
-                SY + py < REAL_SY || SY + py >= REAL_SY + FULL_SYSIZE);
+       pixel = (cSX + px < REAL_SX || cSX + px >= REAL_SX + FULL_SXSIZE ||
+                cSY + py < REAL_SY || cSY + py >= REAL_SY + FULL_SYSIZE);
       }
 
       if ((Sign[laser.current_angle] & (1 << i)) && pixel)
@@ -879,7 +882,7 @@ int ScanPixel()
   return hit_mask;
 }
 
-void ScanLaser()
+void ScanLaser(void)
 {
   int element;
   int end = 0, rf = laser.num_edges;
@@ -1066,7 +1069,7 @@ void ScanLaser()
 #endif
 }
 
-void DrawLaserExt(int start_edge, int num_edges, int mode)
+static void DrawLaserExt(int start_edge, int num_edges, int mode)
 {
   int element;
   int elx, ely;
@@ -1191,8 +1194,8 @@ void DrawLaserExt(int start_edge, int num_edges, int mode)
   if (start_edge == 0)
     laser.current_angle = laser.start_angle;
 
-  LX = laser.edge[start_edge].x - (SX + 2);
-  LY = laser.edge[start_edge].y - (SY + 2);
+  LX = laser.edge[start_edge].x - cSX2;
+  LY = laser.edge[start_edge].y - cSY2;
   XS = 2 * Step[laser.current_angle].x;
   YS = 2 * Step[laser.current_angle].y;
 
@@ -1339,7 +1342,7 @@ void DrawLaser(int start_edge, int mode)
   game_mm.laser_enabled = mode;
 }
 
-void DrawLaser_MM()
+void DrawLaser_MM(void)
 {
   DrawLaser(0, game_mm.laser_enabled);
 }
@@ -2283,7 +2286,7 @@ boolean HitAbsorbingWalls(int element, int hit_mask)
   return TRUE;
 }
 
-void OpenExit(int x, int y)
+static void OpenExit(int x, int y)
 {
   int delay = 6;
 
@@ -2308,7 +2311,7 @@ void OpenExit(int x, int y)
   }
 }
 
-void OpenSurpriseBall(int x, int y)
+static void OpenSurpriseBall(int x, int y)
 {
   int delay = 2;
 
@@ -2329,7 +2332,7 @@ void OpenSurpriseBall(int x, int y)
       getGraphicSource(graphic, 0, &bitmap, &gx, &gy);
 
       BlitBitmap(bitmap, drawto, gx + dx, gy + dy, 6, 6,
-                SX + x * TILEX + dx, SY + y * TILEY + dy);
+                cSX + x * TILEX + dx, cSY + y * TILEY + dy);
 
       MarkTileDirty(x, y);
     }
@@ -2345,7 +2348,7 @@ void OpenSurpriseBall(int x, int y)
   }
 }
 
-void MeltIce(int x, int y)
+static void MeltIce(int x, int y)
 {
   int frames = 5;
   int delay = 5;
@@ -2394,7 +2397,7 @@ void MeltIce(int x, int y)
   }
 }
 
-void GrowAmoeba(int x, int y)
+static void GrowAmoeba(int x, int y)
 {
   int frames = 5;
   int delay = 1;
@@ -2490,6 +2493,8 @@ static void Explode_MM(int x, int y, int phase, int mode)
     else if (IS_MCDUFFIN(Store[x][y]))
     {
       Store[x][y] = EL_EMPTY;
+
+      game.restart_game_message = "Bomb killed Mc Duffin! Play it again?";
     }
 
     Feld[x][y] = Store[x][y];
@@ -2538,7 +2543,7 @@ static void Explode_MM(int x, int y, int phase, int mode)
     getGraphicSource(graphic, graphic_phase, &bitmap, &src_x, &src_y);
 
     BlitBitmap(bitmap, drawto_field, src_x, src_y, TILEX, TILEY,
-              FX + x * TILEX, FY + y * TILEY);
+              cFX + x * TILEX, cFY + y * TILEY);
 
     MarkTileDirty(x, y);
   }
@@ -2954,7 +2959,7 @@ void RotateMirror(int x, int y, int button)
   }
 }
 
-void AutoRotateMirrors()
+static void AutoRotateMirrors(void)
 {
   int x, y;
 
@@ -2989,24 +2994,24 @@ boolean ObjHit(int obx, int oby, int bits)
 
   if (bits & HIT_POS_CENTER)
   {
-    if (CheckLaserPixel(SX + obx + 15,
-                       SY + oby + 15))
+    if (CheckLaserPixel(cSX + obx + 15,
+                       cSY + oby + 15))
       return TRUE;
   }
 
   if (bits & HIT_POS_EDGE)
   {
     for (i = 0; i < 4; i++)
-      if (CheckLaserPixel(SX + obx + 31 * (i % 2),
-                         SY + oby + 31 * (i / 2)))
+      if (CheckLaserPixel(cSX + obx + 31 * (i % 2),
+                         cSY + oby + 31 * (i / 2)))
        return TRUE;
   }
 
   if (bits & HIT_POS_BETWEEN)
   {
     for (i = 0; i < 4; i++)
-      if (CheckLaserPixel(SX + 4 + obx + 22 * (i % 2),
-                         SY + 4 + oby + 22 * (i / 2)))
+      if (CheckLaserPixel(cSX + 4 + obx + 22 * (i % 2),
+                         cSY + 4 + oby + 22 * (i / 2)))
        return TRUE;
   }
 
@@ -3181,8 +3186,10 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
 
       SetTileCursorActive(FALSE);
 
+      game.restart_game_message = "Out of magic energy! Play it again?";
+
 #if 0
-      if (Request("Out of magic energy ! Play it again ?",
+      if (Request("Out of magic energy! Play it again?",
                  REQ_ASK | REQ_STAY_CLOSED))
       {
        InitGame();
@@ -3313,8 +3320,10 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
 
       SetTileCursorActive(FALSE);
 
+      game.restart_game_message = "Magic spell hit Mc Duffin! Play it again?";
+
 #if 0
-      if (Request("Magic spell hit Mc Duffin ! Play it again ?",
+      if (Request("Magic spell hit Mc Duffin! Play it again?",
                  REQ_ASK | REQ_STAY_CLOSED))
       {
        InitGame();
@@ -3358,7 +3367,7 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
     laser.num_edges = 0;
     Bang_MM(laser.start_edge.x, laser.start_edge.y);
 
-    if (Request("Bomb killed Mc Duffin ! Play it again ?",
+    if (Request("Bomb killed Mc Duffin! Play it again?",
                REQ_ASK | REQ_STAY_CLOSED))
     {
       InitGame();
@@ -3536,8 +3545,8 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
 
 /*
     laser.num_edges--;
-    LX = laser.edge[laser.num_edges].x - (SX + 2);
-    LY = laser.edge[laser.num_edges].y - (SY + 2);
+    LX = laser.edge[laser.num_edges].x - cSX2;
+    LY = laser.edge[laser.num_edges].y - cSY2;
 */
 
     for (i = (laser.num_damages > 0 ? laser.num_damages - 1 : 0); i >= 0; i--)
@@ -3590,12 +3599,12 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
     {
       if (laser.wall_mask & (1 << i))
       {
-       if (CheckLaserPixel(SX + ELX * TILEX + 14 + (i % 2) * 2,
-                           SY + ELY * TILEY + 31 * (i / 2)))
+       if (CheckLaserPixel(cSX + ELX * TILEX + 14 + (i % 2) * 2,
+                           cSY + ELY * TILEY + 31 * (i / 2)))
          break;
 
-       if (CheckLaserPixel(SX + ELX * TILEX + 31 * (i % 2),
-                           SY + ELY * TILEY + 14 + (i / 2) * 2))
+       if (CheckLaserPixel(cSX + ELX * TILEX + 31 * (i % 2),
+                           cSY + ELY * TILEY + 14 + (i / 2) * 2))
          break;
       }
     }
@@ -3606,8 +3615,8 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
     {
       if (laser.wall_mask & (1 << i))
       {
-       if (CheckLaserPixel(SX + ELX * TILEX + 31 * (i % 2),
-                           SY + ELY * TILEY + 31 * (i / 2)))
+       if (CheckLaserPixel(cSX + ELX * TILEX + 31 * (i % 2),
+                           cSY + ELY * TILEY + 31 * (i / 2)))
          break;
       }
     }
@@ -3616,8 +3625,8 @@ static void GameActions_MM_Ext(struct MouseActionInfo action, boolean warp_mode)
 
     if (laser.num_beamers > 0 ||
        k1 < 1 || k2 < 4 || k3 < 4 ||
-       CheckLaserPixel(SX + ELX * TILEX + 14,
-                       SY + ELY * TILEY + 14))
+       CheckLaserPixel(cSX + ELX * TILEX + 14,
+                       cSY + ELY * TILEY + 14))
     {
       laser.num_edges = r;
       laser.num_damages = d;
@@ -3767,7 +3776,7 @@ void GameActions_MM(struct MouseActionInfo action, boolean warp_mode)
   CheckSingleStepMode_MM(element_clicked, button_released);
 }
 
-void MovePacMen()
+void MovePacMen(void)
 {
   int mx, my, ox, oy, nx, ny;
   int element;
@@ -3832,8 +3841,8 @@ void MovePacMen()
       getGraphicSource(graphic, 0, &bitmap, &src_x, &src_y);
 
       CT = FrameCounter;
-      ox = SX + ox * TILEX;
-      oy = SY + oy * TILEY;
+      ox = cSX + ox * TILEX;
+      oy = cSY + oy * TILEY;
 
       for (i = 1; i < 33; i += 2)
        BlitBitmap(bitmap, window,
@@ -3872,7 +3881,7 @@ void MovePacMen()
   }
 }
 
-void GameWon_MM()
+void GameWon_MM(void)
 {
   int hi_pos;
   boolean raise_level = FALSE;
@@ -3956,7 +3965,7 @@ void GameWon_MM()
 
   CloseDoor(DOOR_CLOSE_1);
 
-  Request("Level solved !", REQ_CONFIRM);
+  Request("Level solved!", REQ_CONFIRM);
 
   if (level_nr == leveldir_current->handicap_level)
   {
@@ -3991,7 +4000,7 @@ void GameWon_MM()
   BackToFront();
 }
 
-int NewHiScore_MM()
+int NewHiScore_MM(void)
 {
   int k, l;
   int position = -1;
@@ -4272,7 +4281,7 @@ void SaveEngineSnapshotValues_MM(ListNode **buffers)
   engine_snapshot_mm.overload_delay = overload_delay;
 }
 
-void LoadEngineSnapshotValues_MM()
+void LoadEngineSnapshotValues_MM(void)
 {
   int x, y;
 
@@ -4314,7 +4323,7 @@ void LoadEngineSnapshotValues_MM()
   energy_delay   = engine_snapshot_mm.energy_delay;
   overload_delay = engine_snapshot_mm.overload_delay;
 
-  RedrawPlayfield_MM(TRUE);
+  RedrawPlayfield_MM();
 }
 
 static int getAngleFromTouchDelta(int dx, int dy,  int base)
@@ -4330,8 +4339,8 @@ static int getAngleFromTouchDelta(int dx, int dy,  int base)
 int getButtonFromTouchPosition(int x, int y, int dst_mx, int dst_my)
 {
   // calculate start (source) position to be at the middle of the tile
-  int src_mx = SX + x * TILESIZE_VAR + TILESIZE_VAR / 2;
-  int src_my = SY + y * TILESIZE_VAR + TILESIZE_VAR / 2;
+  int src_mx = cSX + x * TILESIZE_VAR + TILESIZE_VAR / 2;
+  int src_my = cSY + y * TILESIZE_VAR + TILESIZE_VAR / 2;
   int dx = dst_mx - src_mx;
   int dy = dst_my - src_my;
   int element;