- fix interpolation stutters when opening console for Duke3D.

This commit is contained in:
Mitchell Richters 2020-05-07 03:47:33 +10:00 committed by Christoph Oelckers
parent 4e1905e630
commit 1bb3640bc9

View file

@ -5909,6 +5909,12 @@ MAIN_LOOP_RESTART:
bool gameUpdate = false;
double gameUpdateStartTime = timerGetHiTicks();
if (M_Active() || GUICapture || ud.pause_on != 0)
{
totalclock = ototalclock + TICSPERFRAME;
}
else
{
while (((g_netClient || g_netServer) || (myplayer.gm & (MODE_MENU | MODE_DEMO)) == 0) && (int)(totalclock - ototalclock) >= TICSPERFRAME)
{
ototalclock += TICSPERFRAME;
@ -5934,7 +5940,7 @@ MAIN_LOOP_RESTART:
localInput = {};
if (((!GUICapture && (myplayer.gm & MODE_MENU) != MODE_MENU) || ud.recstat == 2 || (g_netServer || ud.multimode > 1))
if (((myplayer.gm & MODE_MENU) != MODE_MENU || ud.recstat == 2 || (g_netServer || ud.multimode > 1))
&& (myplayer.gm & MODE_GAME))
{
Net_GetPackets();
@ -5952,6 +5958,7 @@ MAIN_LOOP_RESTART:
= ((GAMEUPDATEAVGTIMENUMSAMPLES - 1.f) * g_gameUpdateAvgTime + g_gameUpdateTime) / ((float)GAMEUPDATEAVGTIMENUMSAMPLES);
G_DoCheats();
}
if (myplayer.gm & (MODE_EOL|MODE_RESTART))
{