added displaying screen messages when connecting to network server
[rocksndiamonds.git] / src / init.c
index 7413cd52e53f5b9695e02e3697c8f57a46d4ccde..db1070e45d6e0eac883fa6701a1d02ecc1ec7dad 100644 (file)
@@ -5619,22 +5619,27 @@ void InitNetworkServer()
   if (!network.enabled || network.connected)
     return;
 
+  LimitScreenUpdates(FALSE);
+
+  ClearRectangle(drawto, 0, 0, WIN_XSIZE, WIN_YSIZE);
+
   if (!ConnectToServer(network.server_host, network.server_port))
   {
-    Request("Cannot connect to network server!", REQ_CONFIRM);
-
     network.enabled = FALSE;
 
     setup.network_mode = FALSE;
-
-    return;
   }
+  else
+  {
+    SendToServer_PlayerName(setup.player_name);
+    SendToServer_ProtocolVersion();
+    SendToServer_NrWanted(setup.network_player_nr + 1);
 
-  SendToServer_PlayerName(setup.player_name);
-  SendToServer_ProtocolVersion();
-  SendToServer_NrWanted(setup.network_player_nr + 1);
+    network.connected = TRUE;
+  }
 
-  network.connected = TRUE;
+  /* short time to recognize result of network initialization */
+  Delay(1000);
 }
 
 static boolean CheckArtworkConfigForCustomElements(char *filename)
@@ -6097,6 +6102,8 @@ void OpenAll()
     return;
   }
 
+  InitNetworkServer();
+
   SetGameStatus(GAME_MODE_MAIN);
 
   FadeSetEnterScreen();
@@ -6109,8 +6116,6 @@ void OpenAll()
 
   DrawMainMenu();
 
-  InitNetworkServer();
-
 #if 0
   Error(ERR_DEBUG, "::: SDL_GetBasePath() == '%s'",
        SDL_GetBasePath());