Ceremony gamestate

Doesn't work
This commit is contained in:
Sally Coolatta 2023-02-24 19:34:13 -05:00
parent e47f46d3bc
commit 7760d6688b
5 changed files with 38 additions and 2 deletions

View file

@ -381,6 +381,7 @@ static void D_Display(void)
}
/* FALLTHRU */
case GS_LEVEL:
case GS_CEREMONY:
if (!gametic)
break;
HU_Erase();

View file

@ -3132,3 +3132,28 @@ void F_TextPromptTicker(void)
animtimer--;
}
}
boolean F_StartCeremony(void)
{
INT32 podiumMapNum = nummapheaders;
wipegamestate = GS_CEREMONY;
if (podiummap
&& ((podiumMapNum = G_MapNumber(podiummap)) < nummapheaders)
&& mapheaderinfo[podiumMapNum]
&& mapheaderinfo[podiumMapNum]->lumpnum != LUMPERROR)
{
gamemap = podiumMapNum+1;
maptol = mapheaderinfo[gamemap-1]->typeoflevel;
globalweather = mapheaderinfo[gamemap-1]->weather;
G_DoLoadLevel(false);
G_SetGamestate(GS_CEREMONY);
return true;
}
return false;
}

View file

@ -78,6 +78,7 @@ void F_StartIntro(void);
void F_StartTitleScreen(void);
void F_StartEnding(void);
void F_StartCredits(void);
boolean F_StartCeremony(void);
extern INT32 finalecount;
extern INT32 titlescrollxspeed;

View file

@ -2230,6 +2230,12 @@ void G_Ticker(boolean run)
F_TitleScreenTicker(run);
break;
case GS_CEREMONY:
P_Ticker(run);
ST_Ticker(run);
HU_Ticker();
break;
case GS_WAITINGPLAYERS:
if (netgame)
F_WaitingPlayersTicker();
@ -4258,8 +4264,10 @@ void G_EndGame(void)
{
if (nextmap == NEXTMAP_CEREMONY) // end game with ceremony
{
/*F_StartEnding(); -- temporary
return;*/
if (F_StartCeremony() == true)
{
return;
}
}
if (nextmap == NEXTMAP_CREDITS) // end game with credits
{

View file

@ -36,6 +36,7 @@ typedef enum
GS_CREDITS, // credit sequence
GS_EVALUATION, // Evaluation at the end of a game.
GS_GAMEEND, // game end sequence - "did you get all those chaos emeralds?"
GS_CEREMONY, // RR: Podium sequence
// Hardcoded fades or other fading methods
GS_INTRO, // introduction