rnd-20030304-2-src
[rocksndiamonds.git] / src / init.c
index e3f9b98f2fc754ff06fe5795cbd4b159e5fb0afa..5f05b082af4a6367e2bbffe75b4eecc38b828f8b 100644 (file)
@@ -118,6 +118,8 @@ void OpenAll()
     return;
   }
 
+  game_status = MAINMENU;
+
   DrawMainMenu();
 
   InitNetworkServer();
@@ -174,7 +176,6 @@ static void InitArtworkConfig()
   {
     "name",
     "sort_priority",
-    "menu.main.hide_static_text",
     "global.num_toons",
     NULL
   };
@@ -737,8 +738,27 @@ void InitElementSmallImages()
 
 static int getFontBitmapID(int font_nr)
 {
-  if (game_status == LEVELED)
-    return font_info[font_nr].special_bitmap_id[GFX_SPECIAL_ARG_EDITOR];
+  int special = -1;
+
+  if (game_status == MAINMENU || game_status == TYPENAME)
+    special = GFX_SPECIAL_ARG_MAIN;
+  else if (game_status == CHOOSELEVEL)
+    special = GFX_SPECIAL_ARG_LEVELS;
+  else if (game_status == HALLOFFAME)
+    special = GFX_SPECIAL_ARG_SCORES;
+  else if (game_status == LEVELED)
+    special = GFX_SPECIAL_ARG_EDITOR;
+  else if (game_status == HELPSCREEN)
+    special = GFX_SPECIAL_ARG_INFO;
+  else if (game_status == SETUP)
+    special = GFX_SPECIAL_ARG_SETUP;
+  else if (game_status == PSEUDO_PREVIEW)
+    special = GFX_SPECIAL_ARG_PREVIEW;
+  else if (game_status == PLAYING || game_status == PSEUDO_DOOR)
+    special = GFX_SPECIAL_ARG_DOOR;
+
+  if (special != -1)
+    return font_info[font_nr].special_bitmap_id[special];
   else
     return font_nr;
 }
@@ -2211,6 +2231,7 @@ void InitElementProperties()
     EL_DYNABOMB_NR,
     EL_DYNABOMB_SZ,
     EL_DYNABOMB_XL,
+    EL_SP_DISK_RED_ACTIVE,
     EL_BUG,
     EL_MOLE,
     EL_PENGUIN,
@@ -2398,7 +2419,8 @@ void InitElementProperties()
     EL_DYNABOMB_PLAYER1_ACTIVE,
     EL_DYNABOMB_PLAYER2_ACTIVE,
     EL_DYNABOMB_PLAYER3_ACTIVE,
-    EL_DYNABOMB_PLAYER4_ACTIVE
+    EL_DYNABOMB_PLAYER4_ACTIVE,
+    EL_SP_DISK_RED_ACTIVE
   };
   static int ep_active_bomb_num = SIZEOF_ARRAY_INT(ep_active_bomb);