- handle r_NoInterpolate in Blood's ticker so that the game isn't locked to 30 fps.

This commit is contained in:
Christoph Oelckers 2020-09-02 07:11:47 +02:00
parent c5636e9917
commit b21f49a1e1

View file

@ -261,6 +261,15 @@ static void commonTicker()
FireProcess(); FireProcess();
ClearBitString(gotpic, 2342); ClearBitString(gotpic, 2342);
} }
// This is single player only.
if (gameRestart)
{
gameRestart = false;
levelRestart();
gamestate = GS_LEVEL;
return;
}
if (gStartNewGame) if (gStartNewGame)
{ {
auto sng = gStartNewGame; auto sng = gStartNewGame;
@ -321,19 +330,9 @@ void GameInterface::Ticker()
if (newweap > 0 && newweap < WeaponSel_MaxBlood) gPlayer[i].newWeapon = newweap; if (newweap > 0 && newweap < WeaponSel_MaxBlood) gPlayer[i].newWeapon = newweap;
} }
// This is single player only.
if (gameRestart)
{
gameRestart = false;
levelRestart();
return;
}
viewClearInterpolations(); viewClearInterpolations();
if (!(paused || (gGameOptions.nGameType == 0 && M_Active())))
{ {
if (paused || (gGameOptions.nGameType == 0 && M_Active()))
return;
}
thinktime.Reset(); thinktime.Reset();
thinktime.Clock(); thinktime.Clock();
for (int i = connecthead; i >= 0; i = connectpoint2[i]) for (int i = connecthead; i >= 0; i = connectpoint2[i])
@ -418,6 +417,9 @@ void GameInterface::Ticker()
ShowSummaryScreen(); ShowSummaryScreen();
} }
} }
r_NoInterpolate = false;
}
else r_NoInterpolate = true;
commonTicker(); commonTicker();
} }