diff --git a/src/f_finale.c b/src/f_finale.c index 55efd8a14cc3d658ddb640e07e23e2ab59c699ed..91c0298fe500744a47f5e3d7e30990737197d49e 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -492,6 +492,8 @@ void F_StartIntro(void) "\x80\n\xA9\xD2\xD2" "\"All right, then\xAF... \xD2\xD2\xA7let's go!\"\n#"); + boolean from_title = gamestate == GS_TITLESCREEN; + G_SetGamestate(GS_INTRO); gameaction = ga_nothing; paused = false; @@ -500,8 +502,19 @@ void F_StartIntro(void) TitleCard_Stop(); intro_scenenum = 0; + intro_curtime = 0; finalecount = animtimer = skullAnimCounter = stoptimer = 0; timetonext = introscenetime[intro_scenenum]; + + if (from_title) + { + wipe_t wipe = {0}; + wipe.style = F_WipeGetStyle(wipe.flags); + wipe.type = wipedefs[wipe_intro_toblack]; + wipe.drawmenuontop = false; + wipe.holdframes = 35; + F_StartWipeParametrized(&wipe); + } } //