From 6c0b30ad40572ec81046087fdb1a238739c69b89 Mon Sep 17 00:00:00 2001 From: Sally Coolatta Date: Tue, 9 Jun 2020 16:49:39 -0400 Subject: [PATCH] Use SV_StartSinglePlayerServer for GP instead of G_DeferedInitNew multiplayer should always = true in kart anyway (should make a branch to remove the variable tbh) --- src/k_menufunc.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/k_menufunc.c b/src/k_menufunc.c index 9e706fbed..e534c5bca 100644 --- a/src/k_menufunc.c +++ b/src/k_menufunc.c @@ -2176,14 +2176,14 @@ void M_CupSelectHandler(INT32 choice) if (cupgrid.grandprix == true) { + S_StartSound(NULL, sfx_s3k63); + // Early fadeout to let the sound finish playing F_WipeStartScreen(); V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31); F_WipeEndScreen(); F_RunWipe(wipedefs[wipe_level_toblack], false, "FADEMAP0", false, false); - M_ClearMenus(true); - memset(&grandprixinfo, 0, sizeof(struct grandprixinfo)); // TODO: game settings screen @@ -2197,13 +2197,20 @@ void M_CupSelectHandler(INT32 choice) grandprixinfo.roundnum = 1; grandprixinfo.initalize = true; - G_DeferedInitNew( + paused = false; + SV_StartSinglePlayerServer(); + multiplayer = true; // yeah, SV_StartSinglePlayerServer clobbers this... + D_MapChange( + grandprixinfo.cup->levellist[0] + 1, + GT_RACE, + grandprixinfo.encore, + true, + 1, false, - G_BuildMapName(grandprixinfo.cup->levellist[0] + 1), - (UINT8)cv_skin.value, - (UINT8)(cv_splitplayers.value - 1), false ); + + M_ClearMenus(true); } else { @@ -2218,9 +2225,8 @@ void M_CupSelectHandler(INT32 choice) levellist.y = levellist.dest; M_SetupNextMenu(&PLAY_LevelSelectDef, false); + S_StartSound(NULL, sfx_s3k63); } - - S_StartSound(NULL, sfx_s3k63); break; case KEY_ESCAPE: if (currentMenu->prevMenu)