rnd-20020401-2-src
[rocksndiamonds.git] / src / init.c
index 70604f2a9392854cd4bda2dc4fc30ad16bcb6105..f4a7f1aec7ed0cf9df4c4c3482a81c48c79c2714 100644 (file)
@@ -23,6 +23,7 @@
 #include "files.h"
 #include "network.h"
 #include "netserv.h"
+#include "cartoons.h"
 
 static char *image_filename[NUM_PICTURES] =
 {
@@ -38,12 +39,12 @@ static char *image_filename[NUM_PICTURES] =
   "RocksFont3.pcx"
 }; 
 
+static void InitSetup(void);
 static void InitPlayerInfo(void);
 static void InitLevelInfo(void);
 static void InitNetworkServer(void);
 static void InitSound(void);
 static void InitGfx(void);
-static void InitCustomGraphics(void);
 static void InitGfxBackground(void);
 static void InitGadgets(void);
 static void InitElementProperties(void);
@@ -66,6 +67,7 @@ void OpenAll(void)
                  MSDOS_POINTER_FILENAME,
                  COOKIE_PREFIX, FILENAME_PREFIX, GAME_VERSION_ACTUAL);
 
+  InitSetup();
   InitPlayerInfo();
 
   InitCounter();
@@ -85,14 +87,19 @@ void OpenAll(void)
   InitLevelInfo();
   InitGadgets();               /* needs to know number of level series */
 
-  InitCustomGraphics();
-
   InitGfxBackground();
+  InitToons();
+
   DrawMainMenu();
 
   InitNetworkServer();
 }
 
+void InitSetup()
+{
+  LoadSetup();                                 /* global setup info */
+}
+
 void InitPlayerInfo()
 {
   int i;
@@ -104,8 +111,6 @@ void InitPlayerInfo()
     stored_player[i].connected = FALSE;
 
   local_player->connected = TRUE;
-
-  LoadSetup();                                 /* global setup info */
 }
 
 void InitLevelInfo()
@@ -289,7 +294,6 @@ void InitTileClipmasks()
 
 void InitGfx()
 {
-  char *filename;
   int i;
 
   /* initialize some global variables */
@@ -308,11 +312,7 @@ void InitGfx()
   pix[PIX_DB_DOOR] = CreateBitmap(3 * DXSIZE, DYSIZE + VYSIZE, DEFAULT_DEPTH);
   pix[PIX_DB_FIELD] = CreateBitmap(FXSIZE, FYSIZE, DEFAULT_DEPTH);
 
-  filename = getImageFilename(image_filename[PIX_SMALLFONT]);
-  if ((pix_default[PIX_SMALLFONT] = LoadImage(filename)) == NULL)
-    Error(ERR_EXIT, "LoadImage() failed: %s", GetError());
-  pix_custom[PIX_SMALLFONT] = NULL;
-  pix[PIX_SMALLFONT] = pix_default[PIX_SMALLFONT];
+  pix[PIX_SMALLFONT] = LoadCustomImage(image_filename[PIX_SMALLFONT]);
 
   InitFontInfo(NULL, NULL, pix[PIX_SMALLFONT]);
 
@@ -330,11 +330,7 @@ void InitGfx()
     {
       DrawInitText(image_filename[i], 150, FC_YELLOW);
 
-      filename = getImageFilename(image_filename[i]);
-      if ((pix_default[i] = LoadImage(filename)) == NULL)
-       Error(ERR_EXIT, "LoadImage() failed: %s", GetError());
-      pix_custom[i] = NULL;
-      pix[i] = pix_default[i];
+      pix[i] = LoadCustomImage(image_filename[i]);
     }
   }
 
@@ -343,49 +339,6 @@ void InitGfx()
   InitTileClipmasks();
 }
 
-void LoadCustomGraphics()
-{
-#if 0
-  int i;
-
-  for(i=0; i<NUM_PICTURES; i++)
-  {
-    Bitmap *new_pic = 
-    pix_custom[i] = LoadImage(image_filename[i]);
-  }
-#endif
-}
-
-void InitCustomGraphics()
-{
-#if 0
-  static char *filename = NULL;
-
-  /* look for optional directory ~/.<program>/graphics */
-  filename = getPath2(getUserDataDir(), GRAPHICS_DIRECTORY);
-  if (access(dir, F_OK) == 0)
-  {
-  }
-
-
-
-
-(leveldir_current->user_defined ?
-                      getUserLevelDir("") :
-                      options.level_directory),
-                     leveldir_current->fullpath,
-                     basename);
-
-
-
-  filename = getPath3((leveldir_current->user_defined ?
-                      getUserLevelDir("") :
-                      options.level_directory),
-                     leveldir_current->fullpath,
-                     basename);
-#endif
-}
-
 void InitGfxBackground()
 {
   int x, y;
@@ -1572,10 +1525,7 @@ void CloseAllAndExit(int exit_value)
   CloseAudio();
 
   for(i=0; i<NUM_BITMAPS; i++)
-  {
-    FreeBitmap(pix_default[i]);
-    FreeBitmap(pix_custom[i]);
-  }
+    FreeBitmap(pix[i]);
 
   CloseVideoDisplay();
   ClosePlatformDependantStuff();