diff --git a/src/d_net.cpp b/src/d_net.cpp index 60a2b61c4..2cf13173f 100644 --- a/src/d_net.cpp +++ b/src/d_net.cpp @@ -2163,7 +2163,8 @@ void Net_DoCommand (int type, BYTE **stream, int player) { DWORD which = ReadLong (stream); - if (gamestate == GS_LEVEL && !paused) + if (gamestate == GS_LEVEL && !paused + && players[player].playerstate != PST_DEAD) { AInventory *item = players[player].mo->Inventory; while (item != NULL && item->InventoryID != which) diff --git a/src/p_interaction.cpp b/src/p_interaction.cpp index 0eae78632..c3be908ea 100644 --- a/src/p_interaction.cpp +++ b/src/p_interaction.cpp @@ -1255,7 +1255,9 @@ int P_DamageMobj (AActor *target, AActor *inflictor, AActor *source, int damage, // This does not save the player if damage >= TELEFRAG_DAMAGE, still need to // telefrag him right? ;) (Unfortunately the damage is "absorbed" by armor, // but telefragging should still do enough damage to kill the player) - if ((player->cheats & CF_BUDDHA) && damage < TELEFRAG_DAMAGE) + if ((player->cheats & CF_BUDDHA) && damage < TELEFRAG_DAMAGE + // Ignore players that are already dead. + && player->playerstate != PST_DEAD) { // If this is a voodoo doll we need to handle the real player as well. player->mo->health = target->health = player->health = 1;