added transparency for game elements over empty space elements
[rocksndiamonds.git] / src / game.c
index d4c0402560342f08c47abe16dcef0883906d35f3..491d4e9b541be0f3ca1ab48423f3ac1e16965719 100644 (file)
@@ -2028,6 +2028,14 @@ static void InitField(int x, int y, boolean init_game)
 
        InitField(x, y, init_game);
       }
+      else if (IS_EMPTY_ELEMENT(element))
+      {
+       GfxElementEmpty[x][y] = element;
+       Tile[x][y] = EL_EMPTY;
+
+       if (element_info[element].use_gfx_element)
+         game.use_masked_elements = TRUE;
+      }
 
       break;
   }
@@ -3880,6 +3888,7 @@ void InitGame(void)
     GfxRandom[x][y] = INIT_GFX_RANDOM();
     GfxRandomStatic[x][y] = INIT_GFX_RANDOM();
     GfxElement[x][y] = EL_UNDEFINED;
+    GfxElementEmpty[x][y] = EL_EMPTY;
     GfxAction[x][y] = ACTION_DEFAULT;
     GfxDir[x][y] = MV_NONE;
     GfxRedraw[x][y] = GFX_REDRAW_NONE;
@@ -14199,7 +14208,6 @@ static int DigField(struct PlayerInfo *player,
       return MP_NO_ACTION;
     }
   }
-
   if (IS_TUBE(Back[jx][jy]) && game.engine_version >= VERSION_IDENT(2,2,0,0))
     old_element = Back[jx][jy];