mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Fix the options menu on first boot bug.
- Was reproducible by spamming back button events during game launch.
- Caused by the way profile data was initialised - D_StartTitle was calling a function with too many side effects.
- In addition, never instantly skip the title screen when the above occours.
- This would be enough to patch over the mentioned bug, but I made sure to solve it properly so it won't break when we touch this again later.
This commit is contained in:
parent
acd777a77a
commit
de5370b134
2 changed files with 9 additions and 4 deletions
|
|
@ -1003,9 +1003,6 @@ void D_StartTitle(void)
|
|||
advancedemo = false;
|
||||
F_StartTitleScreen();
|
||||
|
||||
M_InitOptions(0); // Make sure the option menu is ready to go since we need to select a profile.
|
||||
currentMenu = &MAIN_ProfilesDef; // reset the current menu ID
|
||||
|
||||
// Reset the palette
|
||||
if (rendermode != render_none)
|
||||
V_SetPaletteLump("PLAYPAL");
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ boolean menuactive = false;
|
|||
boolean fromlevelselect = false;
|
||||
|
||||
// current menudef
|
||||
menu_t *currentMenu = &OPTIONS_ProfilesDef;
|
||||
menu_t *currentMenu = &MAIN_ProfilesDef;
|
||||
|
||||
char dummystaffname[22];
|
||||
|
||||
|
|
@ -925,6 +925,11 @@ void M_StartControlPanel(void)
|
|||
menucmd[i].delay = MENUDELAYTIME;
|
||||
}
|
||||
|
||||
// No instantly skipping the titlescreen.
|
||||
// (We can change this timer later when extra animation is added.)
|
||||
if (gamestate == GS_TITLESCREEN && finalecount < 1)
|
||||
return;
|
||||
|
||||
// intro might call this repeatedly
|
||||
if (menuactive)
|
||||
{
|
||||
|
|
@ -949,6 +954,9 @@ void M_StartControlPanel(void)
|
|||
{
|
||||
if (cv_currprofile.value == -1) // Only ask once per session.
|
||||
{
|
||||
// Make sure the profile data is ready now since we need to select a profile.
|
||||
M_ResetOptions();
|
||||
|
||||
// we need to do this before setting ApplyProfile otherwise funky things are going to happen.
|
||||
currentMenu = &MAIN_ProfilesDef;
|
||||
optionsmenu.profilen = cv_ttlprofilen.value;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue