From d71cfa9e4af661ace3f957162fa14cbdba8bd83c Mon Sep 17 00:00:00 2001 From: Simon Howard Date: Fri, 5 Apr 2013 20:15:56 +0000 Subject: Split Doom netgame startup into two stages. Subversion-branch: /branches/v2-branch Subversion-revision: 2583 --- src/doom/d_main.c | 52 ++++++++++++++++++++++++++++------------------------ 1 file changed, 28 insertions(+), 24 deletions(-) (limited to 'src/doom/d_main.c') diff --git a/src/doom/d_main.c b/src/doom/d_main.c index 0746a579..9f8b806c 100644 --- a/src/doom/d_main.c +++ b/src/doom/d_main.c @@ -134,7 +134,8 @@ char mapdir[1024]; // directory of development maps int show_endoom = 1; -void D_CheckNetGame (void); +void D_ConnectNetGame(void); +void D_CheckNetGame(void); // @@ -1366,7 +1367,32 @@ void D_DoomMain (void) if (W_CheckNumForName(name[i])<0) I_Error(DEH_String("\nThis is not the registered version.")); } - + + if (W_CheckNumForName("SS_START") >= 0 + || W_CheckNumForName("FF_END") >= 0) + { + I_PrintDivider(); + printf(" WARNING: The loaded WAD file contains modified sprites or\n" + " floor textures. You may want to use the '-merge' command\n" + " line option instead of '-file'.\n"); + } + + I_PrintStartupBanner(gamedescription); + PrintDehackedBanners(); + + DEH_printf("I_Init: Setting up machine state.\n"); + I_CheckIsScreensaver(); + I_InitTimer(); + I_InitJoystick(); + +#ifdef FEATURE_MULTIPLAYER + printf ("NET_Init: Init network subsystem.\n"); + NET_Init (); +#endif + + // Initial netgame startup. Connect to server etc. + D_ConnectNetGame(); + // get skill / episode / map from parms startskill = sk_medium; startepisode = 1; @@ -1502,18 +1528,6 @@ void D_DoomMain (void) startloadgame = -1; } - if (W_CheckNumForName("SS_START") >= 0 - || W_CheckNumForName("FF_END") >= 0) - { - I_PrintDivider(); - printf(" WARNING: The loaded WAD file contains modified sprites or\n" - " floor textures. You may want to use the '-merge' command\n" - " line option instead of '-file'.\n"); - } - - I_PrintStartupBanner(gamedescription); - PrintDehackedBanners(); - DEH_printf("M_Init: Init miscellaneous info.\n"); M_Init (); @@ -1523,16 +1537,6 @@ void D_DoomMain (void) DEH_printf("\nP_Init: Init Playloop state.\n"); P_Init (); - DEH_printf("I_Init: Setting up machine state.\n"); - I_CheckIsScreensaver(); - I_InitTimer(); - I_InitJoystick(); - -#ifdef FEATURE_MULTIPLAYER - printf ("NET_Init: Init network subsystem.\n"); - NET_Init (); -#endif - DEH_printf("S_Init: Setting up sound.\n"); S_Init (sfxVolume * 8, musicVolume * 8); -- cgit v1.2.3