added updating virtual buttons setup screen depending on screen orientation
[rocksndiamonds.git] / src / init.c
index cf83e5043229b5cef9326927bf2ddd34db6e83f6..863704ef87709702d125e4d05d2752c9257e2782 100644 (file)
@@ -552,13 +552,9 @@ void InitFontGraphicInfo()
       font_bitmap_info[font_bitmap_id].height = graphic_info[graphic].height;
 
       font_bitmap_info[font_bitmap_id].offset_x =
-       (graphic_info[graphic].offset_x != 0 ?
-        graphic_info[graphic].offset_x :
-        graphic_info[graphic].width);
+       graphic_info[graphic].offset_x;
       font_bitmap_info[font_bitmap_id].offset_y =
-       (graphic_info[graphic].offset_y != 0 ?
-        graphic_info[graphic].offset_y :
-        graphic_info[graphic].height);
+       graphic_info[graphic].offset_y;
 
       font_bitmap_info[font_bitmap_id].draw_xoffset =
        graphic_info[graphic].draw_xoffset;
@@ -5068,6 +5064,7 @@ static void InitSetup()
 static void InitGameInfo()
 {
   game.restart_level = FALSE;
+  game.restart_game_message = NULL;
 }
 
 static void InitPlayerInfo()
@@ -5078,9 +5075,13 @@ static void InitPlayerInfo()
   local_player = &stored_player[0];
 
   for (i = 0; i < MAX_PLAYERS; i++)
-    stored_player[i].connected = FALSE;
+  {
+    stored_player[i].connected_locally = FALSE;
+    stored_player[i].connected_network = FALSE;
+  }
 
-  local_player->connected = TRUE;
+  local_player->connected_locally = TRUE;
+  local_player->connected_network = TRUE;
 }
 
 static void InitArtworkInfo()
@@ -5127,6 +5128,10 @@ static void InitArtworkConfig()
   {
     "name",
     "sort_priority",
+    "program_title",
+    "program_copyright",
+    "program_company",
+
     NULL
   };
   static char **ignore_image_tokens;
@@ -5232,6 +5237,17 @@ static void InitMixer()
   StartMixer();
 }
 
+static void InitVideoOverlay()
+{
+  // if virtual buttons are not loaded from setup file, repeat initializing
+  // virtual buttons grid with default values now that video is initialized
+  if (!setup.touch.grid_initialized)
+    InitSetup();
+
+  InitTileCursorInfo();
+  InitOverlayInfo();
+}
+
 void InitGfxBuffers()
 {
   static int win_xsize_last = -1;
@@ -5431,6 +5447,7 @@ void InitGfx()
   InitGfxDrawBusyAnimFunction(DrawInitAnim);
   InitGfxDrawGlobalAnimFunction(DrawGlobalAnimations);
   InitGfxDrawGlobalBorderFunction(DrawMaskedBorderToTarget);
+  InitGfxDrawTileCursorFunction(DrawTileCursor);
 
   gfx.fade_border_source_status = global.border_status;
   gfx.fade_border_target_status = global.border_status;
@@ -6007,8 +6024,7 @@ void OpenAll()
   InitVideoDefaults();
   InitVideoDisplay();
   InitVideoBuffer(WIN_XSIZE, WIN_YSIZE, DEFAULT_DEPTH, setup.fullscreen);
-
-  InitOverlayInfo();
+  InitVideoOverlay();
 
   print_timestamp_time("[init video stuff]");