diff options
author | James Haley | 2010-09-27 17:40:54 +0000 |
---|---|---|
committer | James Haley | 2010-09-27 17:40:54 +0000 |
commit | 5f9fe97f7cfedec45fb8cf599d2c52eb69e76027 (patch) | |
tree | 0ab1368fbd812335fa9de55b6f656ee814e1acb0 /src/strife/g_game.c | |
parent | fee277eb0a3bfee3000a6f2adb610ab0b274a917 (diff) | |
download | chocolate-doom-5f9fe97f7cfedec45fb8cf599d2c52eb69e76027.tar.gz chocolate-doom-5f9fe97f7cfedec45fb8cf599d2c52eb69e76027.tar.bz2 chocolate-doom-5f9fe97f7cfedec45fb8cf599d2c52eb69e76027.zip |
Code for line types 196 and 212 (thought I committed that already o_O),
and code to transfer leveltime across map changes in G_DoWorldDone.
Subversion-branch: /branches/strife-branch
Subversion-revision: 2144
Diffstat (limited to 'src/strife/g_game.c')
-rw-r--r-- | src/strife/g_game.c | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/strife/g_game.c b/src/strife/g_game.c index 96a17ae4..d283c94a 100644 --- a/src/strife/g_game.c +++ b/src/strife/g_game.c @@ -1567,16 +1567,31 @@ boolean G_RiftCheat(int riftSpotNum) // void G_DoWorldDone (void) { + int temp_leveltime = leveltime; + gamestate = GS_LEVEL; gamemap = destmap; - + // STRIFE-TODO: hubs bullshit - + // G_LoadPath(); + // if (!deathmatch) + // ebx0 = (*(_DWORD *)(players[0].mo + 104) & 0x8000000) > 0; + // G_DoLoadGame(...); + + // temporary substitute: G_DoLoadLevel (); + // [STRIFE] leveltime carries over between maps + leveltime = temp_leveltime; + if(!deathmatch) { // STRIFE-TODO: powerup transfers etc + // *(_WORD *)(players[0].mo + 106) &= 0xF7FBu; + // if (v1) + // *(_BYTE *)(plaeyrs[0].mo + 106) |= 4u; + // if (ebx0) + // *(_BYTE *)(players[0].mo + 107) |= 8u; G_RiftPlayer(); @@ -1612,9 +1627,9 @@ void G_LoadGame (char* name) void G_DoLoadGame (void) { int savedleveltime; - + gameaction = ga_nothing; - + save_stream = fopen(savename, "rb"); if (save_stream == NULL) @@ -1644,12 +1659,12 @@ void G_DoLoadGame (void) P_UnArchiveSpecials (); if (!P_ReadSaveGameEOF()) - I_Error ("Bad savegame"); + I_Error ("Bad savegame"); fclose(save_stream); if (setsizeneeded) - R_ExecuteSetViewSize (); + R_ExecuteSetViewSize (); // draw the pattern into the back screen R_FillBackScreen (); |