Fix attract title logo slidein (resolves #1273)

- V_SLIDEIN: For (G_IsTitleCardAvailable == false)/(versus at map start == true) contexts, use timeinmap instead of leveltime
- Don't reset timeinmap when reloading gamestate, so it's more functionally equivalent to lt_ticker
These two changes also fix the hypothetical issue of titlecard-less custom gametypes having weird HUD state on late netgame join.

Timeinmap is exclusively used for HUD, as is st_fadein. timeinmap also doesn't increment under g_fastforward, therefore the best candidate to tie together
This commit is contained in:
toaster 2024-04-14 20:54:03 +01:00
parent f29ed06e92
commit db73636f5e
2 changed files with 5 additions and 3 deletions

View file

@ -7645,7 +7645,9 @@ static void P_InitLevelSettings(void)
// circuit, race and competition stuff
numcheatchecks = 0;
timeinmap = 0;
if (!g_reloadinggamestate)
timeinmap = 0;
// special stage
stagefailed = true; // assume failed unless proven otherwise - P_GiveEmerald or emerald touchspecial

View file

@ -1516,10 +1516,10 @@ static fixed_t ST_CalculateFadeIn(player_t *player)
if (K_CheckBossIntro() == true || G_IsTitleCardAvailable() == false)
{
if (leveltime <= 16)
if (timeinmap <= 16)
timer = 0;
else
timer = leveltime-16;
timer = timeinmap-16;
}
if (timer < length)