projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added being able to reconnect after network server was restarted
[rocksndiamonds.git]
/
src
/
init.c
diff --git
a/src/init.c
b/src/init.c
index 7413cd52e53f5b9695e02e3697c8f57a46d4ccde..71cc90db93ac2befb78b0c822c054281ad3cdcc7 100644
(file)
--- a/
src/init.c
+++ b/
src/init.c
@@
-5619,22
+5619,25
@@
void InitNetworkServer()
if (!network.enabled || network.connected)
return;
if (!network.enabled || network.connected)
return;
+ LimitScreenUpdates(FALSE);
+
if (!ConnectToServer(network.server_host, network.server_port))
{
if (!ConnectToServer(network.server_host, network.server_port))
{
- Request("Cannot connect to network server!", REQ_CONFIRM);
-
network.enabled = FALSE;
setup.network_mode = FALSE;
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_WithScreenUpdates(1000);
}
static boolean CheckArtworkConfigForCustomElements(char *filename)
}
static boolean CheckArtworkConfigForCustomElements(char *filename)
@@
-6097,6
+6100,8
@@
void OpenAll()
return;
}
return;
}
+ InitNetworkServer();
+
SetGameStatus(GAME_MODE_MAIN);
FadeSetEnterScreen();
SetGameStatus(GAME_MODE_MAIN);
FadeSetEnterScreen();
@@
-6109,8
+6114,6
@@
void OpenAll()
DrawMainMenu();
DrawMainMenu();
- InitNetworkServer();
-
#if 0
Error(ERR_DEBUG, "::: SDL_GetBasePath() == '%s'",
SDL_GetBasePath());
#if 0
Error(ERR_DEBUG, "::: SDL_GetBasePath() == '%s'",
SDL_GetBasePath());