g_game.c: Fix -timedemo "realtics" duration in Heretic/Hexen

Same fix that fraggle did for Doom: only matters for multilevel demos so
it wasn't relevant until such demos could be played back.

Partial implementation of #432
This commit is contained in:
Thomas A. Birkel 2016-10-16 04:17:24 -04:00
parent 9d51e53108
commit e5d5a0930e
3 changed files with 8 additions and 2 deletions

View file

@ -18,6 +18,10 @@
* The vanilla limit of 4046 lumps per WAD is now enforced. (thanks * The vanilla limit of 4046 lumps per WAD is now enforced. (thanks
Jon, Quasar, Edward-san) Jon, Quasar, Edward-san)
* Solidsegs overflow is emulated like in vanilla. (thanks Quasar) * Solidsegs overflow is emulated like in vanilla. (thanks Quasar)
* Heretic/Hexen demo support has expanded. "-demoextend" allows
demos to last longer than a single level; "-shortticfix" adjusts
low-resolution turning to match Doom's handling; "-maxdemo" and
"-longtics" support. (thanks CapnClever)
### Build systems ### Build systems
* Improved compatibility with BSD Make. (thanks R.Rebello) * Improved compatibility with BSD Make. (thanks R.Rebello)

View file

@ -680,7 +680,6 @@ void G_DoLoadLevel(void)
P_SetupLevel(gameepisode, gamemap, 0, gameskill); P_SetupLevel(gameepisode, gamemap, 0, gameskill);
displayplayer = consoleplayer; // view the guy you are playing displayplayer = consoleplayer; // view the guy you are playing
starttime = I_GetTime();
gameaction = ga_nothing; gameaction = ga_nothing;
Z_CheckHeap(); Z_CheckHeap();
@ -1842,6 +1841,8 @@ void G_TimeDemo(char *name)
} }
G_InitNew(skill, episode, map); G_InitNew(skill, episode, map);
starttime = I_GetTime();
usergame = false; usergame = false;
demoplayback = true; demoplayback = true;
timingdemo = true; timingdemo = true;

View file

@ -682,7 +682,6 @@ void G_DoLoadLevel(void)
SN_StopAllSequences(); SN_StopAllSequences();
P_SetupLevel(gameepisode, gamemap, 0, gameskill); P_SetupLevel(gameepisode, gamemap, 0, gameskill);
displayplayer = consoleplayer; // view the guy you are playing displayplayer = consoleplayer; // view the guy you are playing
starttime = I_GetTime();
gameaction = ga_nothing; gameaction = ga_nothing;
Z_CheckHeap(); Z_CheckHeap();
@ -2009,6 +2008,8 @@ void G_TimeDemo(char *name)
} }
G_InitNew(skill, episode, map); G_InitNew(skill, episode, map);
starttime = I_GetTime();
usergame = false; usergame = false;
demoplayback = true; demoplayback = true;
timingdemo = true; timingdemo = true;