rnd-20020906-2-src
[rocksndiamonds.git] / src / init.c
index 183ba2b9a45862ff63d71ee25ca8666d2c405036..cef28a3003695c33e83727c29f0e865fe26d322a 100644 (file)
@@ -100,7 +100,6 @@ void OpenAll(void)
   InitGfx();
   InitElementProperties();     /* initializes IS_CHAR() for el2gfx() */
   InitElementInfo();
-  InitGraphicInfo();
 
   InitLevelInfo();
   InitLevelArtworkInfo();
@@ -180,6 +179,7 @@ static void InitImages()
 
   /* load custom images */
   ReloadCustomImages();
+  InitGraphicInfo();
 }
 
 static void InitMixer()
@@ -310,11 +310,11 @@ static void InitTileClipmasks()
       int tile = tile_needs_clipping[i].start + j;
       int graphic = tile;
       int src_x, src_y;
-      int pixmap_nr;
+      Bitmap *src_bitmap;
       Pixmap src_pixmap;
 
-      getGraphicSource(graphic, &pixmap_nr, &src_x, &src_y);
-      src_pixmap = pix[pixmap_nr]->clip_mask;
+      getGraphicSource(graphic, &src_bitmap, &src_x, &src_y);
+      src_pixmap = src_bitmap->clip_mask;
 
       tile_clipmask[tile] = XCreatePixmap(display, window->drawable,
                                          TILEX, TILEY, 1);
@@ -497,6 +497,7 @@ void ReloadCustomArtwork()
     }
 
     ReloadCustomImages();
+    InitGraphicInfo();
 
     FreeTileClipmasks();
     InitTileClipmasks();
@@ -855,22 +856,15 @@ void InitGraphicInfo()
   /* always start with reliable default values */
   for(i=0; i<MAX_GRAPHICS; i++)
   {
-    graphic_info[i].bitmap = pix[PIX_SP];      /* graphic that ... */
-    graphic_info[i].src_x = 0;                 /* ... contains ... */
-    graphic_info[i].src_y = 0;                 /* ... empty space. */
+    graphic_info[i].bitmap = NULL;
+    graphic_info[i].src_x = 0;
+    graphic_info[i].src_y = 0;
     graphic_info[i].anim_frames = 1;
     graphic_info[i].anim_delay = 0;
     graphic_info[i].anim_mode = ANIM_NORMAL;
-  }
 
-  for(i=0; i<MAX_GRAPHICS; i++)
-  {
-    int bitmap_nr;
-
-    getGraphicSource(i, &bitmap_nr,
+    getGraphicSource(i, &graphic_info[i].bitmap,
                     &graphic_info[i].src_x, &graphic_info[i].src_y);
-
-    graphic_info[i].bitmap = pix[bitmap_nr];
   }
 }