added variable to cleanup code
[rocksndiamonds.git] / src / game.c
index 6e0914df5e867453e176780bf7daf1d940a1ee48..dd9df82c71dd1bbb22e6eb9ae654837531ee6d20 100644 (file)
@@ -5836,9 +5836,6 @@ static void Explode(int ex, int ey, int phase, int mode)
   int last_phase;
   int border_element;
 
-  // !!! eliminate this variable !!!
-  int delay = (game.emulation == EMU_SUPAPLEX ? 3 : 2);
-
   if (game.explosions_delayed)
   {
     ExplodeField[ex][ey] = mode;
@@ -6119,7 +6116,7 @@ static void Explode(int ex, int ey, int phase, int mode)
     int graphic = el_act2img(GfxElement[x][y], ACTION_EXPLODING);
     int frame = getGraphicAnimationFrameXY(graphic, x, y);
 
-    if (phase == delay)
+    if (phase == 1)
       TEST_DrawLevelFieldCrumbled(x, y);
 
     if (IS_WALKABLE_OVER(Back[x][y]) && Back[x][y] != EL_EMPTY)
@@ -13951,7 +13948,7 @@ void KillPlayer(struct PlayerInfo *player)
   player->killed = TRUE;
 
   // remove accessible field at the player's position
-  Tile[jx][jy] = EL_EMPTY;
+  RemoveField(jx, jy);
 
   // deactivate shield (else Bang()/Explode() would not work right)
   player->shield_normal_time_left = 0;
@@ -15649,8 +15646,9 @@ static char *getRestartGameMessage(void)
   return message;
 }
 
-static void RequestRestartGame(char *message)
+static void RequestRestartGame(void)
 {
+  char *message = getRestartGameMessage();
   boolean has_started_game = hasStartedNetworkGame();
   int request_mode = (has_started_game ? REQ_ASK : REQ_CONFIRM);
   int door_state = DOOR_CLOSE_1;
@@ -15710,7 +15708,7 @@ boolean CheckRestartGame(void)
   if (!setup.ask_on_game_over)
     return FALSE;
 
-  RequestRestartGame(getRestartGameMessage());
+  RequestRestartGame();
 
   return TRUE;
 }