diff --git a/docs/rh-log.txt b/docs/rh-log.txt index 81733509d7..b74db371c9 100644 --- a/docs/rh-log.txt +++ b/docs/rh-log.txt @@ -1,3 +1,6 @@ +January 11, 2008 +- Moved thingdef_codeptr.cpp into thingdef/ with the other thingdef files. + January 11, 2008 (Changes by Graf Zahl) - Added Skulltag's pickup sprite and related information to the pistol. This will also double as the pistol's icon in the AltHUD. @@ -6,6 +9,8 @@ January 11, 2008 (Changes by Graf Zahl) - Added GZDoom's alt HUD. January 10, 2008 +- Fixed: After loading a savegame, G_UnSnapshotLevel() destroyed the + unmorphed versions of players because it thought they were extras. - Fixed: Weapon positions were only adjusted in 1280x1024 if the status bar was hidden. - Fixed: If you died in co-op and somebody else ended the map before you diff --git a/src/g_level.cpp b/src/g_level.cpp index df9cd5ed71..38d7219c32 100644 --- a/src/g_level.cpp +++ b/src/g_level.cpp @@ -2813,7 +2813,20 @@ void G_UnSnapshotLevel (bool hubLoad) next = it.Next(); if (pawn->player == NULL || pawn->player->mo == NULL || !playeringame[pawn->player - players]) { - pawn->Destroy (); + int i; + + // If this isn't the unmorphed original copy of a player, destroy it, because it's extra. + for (i = 0; i < MAXPLAYERS; ++i) + { + if (playeringame[i] && players[i].morphTics && players[i].mo->tracer == pawn) + { + break; + } + } + if (i == MAXPLAYERS) + { + pawn->Destroy (); + } } } } diff --git a/src/g_shared/a_morph.cpp b/src/g_shared/a_morph.cpp index 64ed47787d..3837a0af2f 100644 --- a/src/g_shared/a_morph.cpp +++ b/src/g_shared/a_morph.cpp @@ -9,7 +9,7 @@ #include "m_random.h" #include "a_sharedglobal.h" -#define MORPHTICS (4*TICRATE) +#define MORPHTICS (40*TICRATE) static FRandom pr_morphmonst ("MorphMonster"); diff --git a/src/thingdef_codeptr.cpp b/src/thingdef/thingdef_codeptr.cpp similarity index 100% rename from src/thingdef_codeptr.cpp rename to src/thingdef/thingdef_codeptr.cpp diff --git a/wadsrc/pista0.png b/wadsrc/pista0.png index a0bb66421a..d7790c683a 100644 Binary files a/wadsrc/pista0.png and b/wadsrc/pista0.png differ