X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Finit.c;h=db1070e45d6e0eac883fa6701a1d02ecc1ec7dad;hp=7413cd52e53f5b9695e02e3697c8f57a46d4ccde;hb=e02ece0bdcbe2a883a0a104d8b33bf435ad169db;hpb=ced5b6e12d3dcc3e55bbe1ac858e7e5308cac69c diff --git a/src/init.c b/src/init.c index 7413cd52..db1070e4 100644 --- a/src/init.c +++ b/src/init.c @@ -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());