mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Merge branch 'fix-missing-evaluation' into 'master'
Fix missing evaluation screen at end of GP credits Closes #1261 See merge request KartKrew/Kart!2247
This commit is contained in:
commit
b8981b46bc
4 changed files with 31 additions and 10 deletions
|
|
@ -1007,12 +1007,10 @@ typedef enum
|
||||||
#define EVALLEN_PERFECT (18*TICRATE)
|
#define EVALLEN_PERFECT (18*TICRATE)
|
||||||
|
|
||||||
static evaluationtype_t evaluationtype;
|
static evaluationtype_t evaluationtype;
|
||||||
UINT16 finaleemeralds = 0;
|
static UINT16 finaleemeralds = 0;
|
||||||
|
|
||||||
void F_StartGameEvaluation(void)
|
void F_InitGameEvaluation(void)
|
||||||
{
|
{
|
||||||
S_StopMusicCredit();
|
|
||||||
|
|
||||||
// Credits option in extras menu
|
// Credits option in extras menu
|
||||||
if (
|
if (
|
||||||
grandprixinfo.gp == false
|
grandprixinfo.gp == false
|
||||||
|
|
@ -1021,15 +1019,11 @@ void F_StartGameEvaluation(void)
|
||||||
#endif
|
#endif
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
F_StartGameEnd();
|
evaluationtype = EVAL_MAX; // skip
|
||||||
|
finaleemeralds = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
G_SetGamestate(GS_EVALUATION);
|
|
||||||
|
|
||||||
// Just in case they're open ... somehow
|
|
||||||
M_ClearMenus(true);
|
|
||||||
|
|
||||||
UINT8 difficulty = KARTSPEED_NORMAL;
|
UINT8 difficulty = KARTSPEED_NORMAL;
|
||||||
if (grandprixinfo.gp == true)
|
if (grandprixinfo.gp == true)
|
||||||
{
|
{
|
||||||
|
|
@ -1054,6 +1048,24 @@ void F_StartGameEvaluation(void)
|
||||||
evaluationtype = EVAL_SUPER;
|
evaluationtype = EVAL_SUPER;
|
||||||
else
|
else
|
||||||
evaluationtype = EVAL_PERFECT;
|
evaluationtype = EVAL_PERFECT;
|
||||||
|
}
|
||||||
|
|
||||||
|
void F_StartGameEvaluation(void)
|
||||||
|
{
|
||||||
|
S_StopMusicCredit();
|
||||||
|
|
||||||
|
// Credits option in extras menu
|
||||||
|
// Set by F_InitGameEvaluation
|
||||||
|
if (evaluationtype == EVAL_MAX)
|
||||||
|
{
|
||||||
|
F_StartGameEnd();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
G_SetGamestate(GS_EVALUATION);
|
||||||
|
|
||||||
|
// Just in case they're open ... somehow
|
||||||
|
M_ClearMenus(true);
|
||||||
|
|
||||||
timetonext = (evaluationtype == EVAL_PERFECT) ? EVALLEN_PERFECT : EVALLEN_NORMAL;
|
timetonext = (evaluationtype == EVAL_PERFECT) ? EVALLEN_PERFECT : EVALLEN_NORMAL;
|
||||||
|
|
||||||
|
|
@ -2276,7 +2288,10 @@ void F_EndCutScene(void)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (cutnum == g_credits_cutscene-1)
|
if (cutnum == g_credits_cutscene-1)
|
||||||
|
{
|
||||||
|
F_InitGameEvaluation(); // FIXME: cutscenes are probably not used, I don't know if it works -jartha
|
||||||
F_StartGameEvaluation();
|
F_StartGameEvaluation();
|
||||||
|
}
|
||||||
else if (cutnum == introtoplay-1)
|
else if (cutnum == introtoplay-1)
|
||||||
D_StartTitle();
|
D_StartTitle();
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@ void F_WaitingPlayersTicker(void);
|
||||||
void F_WaitingPlayersDrawer(void);
|
void F_WaitingPlayersDrawer(void);
|
||||||
|
|
||||||
void F_GameEvaluationDrawer(void);
|
void F_GameEvaluationDrawer(void);
|
||||||
|
void F_InitGameEvaluation(void); // depends on grandprixinfo!
|
||||||
void F_StartGameEvaluation(void);
|
void F_StartGameEvaluation(void);
|
||||||
void F_GameEvaluationTicker(void);
|
void F_GameEvaluationTicker(void);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3193,6 +3193,7 @@ void G_FinishExitLevel(void)
|
||||||
}
|
}
|
||||||
else if (gamestate == GS_CREDITS)
|
else if (gamestate == GS_CREDITS)
|
||||||
{
|
{
|
||||||
|
F_InitGameEvaluation();
|
||||||
F_StartGameEvaluation();
|
F_StartGameEvaluation();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -4860,6 +4861,7 @@ void G_EndGame(void)
|
||||||
}
|
}
|
||||||
if (nextmap == NEXTMAP_EVALUATION) // end game with evaluation
|
if (nextmap == NEXTMAP_EVALUATION) // end game with evaluation
|
||||||
{
|
{
|
||||||
|
F_InitGameEvaluation();
|
||||||
F_StartGameEvaluation();
|
F_StartGameEvaluation();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -391,6 +391,9 @@ void F_ConsiderCreditsMusicUpdate(void)
|
||||||
|
|
||||||
void F_StartCredits(void)
|
void F_StartCredits(void)
|
||||||
{
|
{
|
||||||
|
// Prepare evaluation screen at the end
|
||||||
|
F_InitGameEvaluation();
|
||||||
|
|
||||||
G_SetGamestate(GS_CREDITS);
|
G_SetGamestate(GS_CREDITS);
|
||||||
|
|
||||||
// Just in case they're open ... somehow
|
// Just in case they're open ... somehow
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue