From fc40e9723a2b907e083783705a7b17106773c905 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 25 Oct 2014 11:51:29 +0200 Subject: [PATCH] - fixed: CHANGELEVEL_RESETINVENTORY may not change the player's health. APlayerPawn::GiveDefaultInventory altered the player_t's health value which was ok as long as this function was only called from G_PlayerReborn. For all other cases this initialization was wrong and G_PlayerReborn should do this itself. --- src/g_game.cpp | 3 +++ src/m_cheat.cpp | 1 - src/p_user.cpp | 3 --- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/g_game.cpp b/src/g_game.cpp index a58753b86..8419fc017 100644 --- a/src/g_game.cpp +++ b/src/g_game.cpp @@ -1363,6 +1363,7 @@ void G_PlayerReborn (int player) ::new(p) player_t; memcpy (p->frags, frags, sizeof(p->frags)); + p->health = actor->health; p->fragcount = fragcount; p->killcount = killcount; p->itemcount = itemcount; @@ -1381,6 +1382,8 @@ void G_PlayerReborn (int player) if (gamestate != GS_TITLELEVEL) { + + // [GRB] Give inventory specified in DECORATE actor->GiveDefaultInventory (); p->ReadyWeapon = p->PendingWeapon; } diff --git a/src/m_cheat.cpp b/src/m_cheat.cpp index ac4eb140d..e48b79980 100644 --- a/src/m_cheat.cpp +++ b/src/m_cheat.cpp @@ -340,7 +340,6 @@ void cht_DoCheat (player_t *player, int cheat) player->mo->Translation = TRANSLATION(TRANSLATION_Players, BYTE(player-players)); } player->mo->DamageType = NAME_None; -// player->mo->GiveDefaultInventory(); if (player->ReadyWeapon != NULL) { P_SetPsprite(player, ps_weapon, player->ReadyWeapon->GetUpState()); diff --git a/src/p_user.cpp b/src/p_user.cpp index 51105cd3d..045e61969 100644 --- a/src/p_user.cpp +++ b/src/p_user.cpp @@ -1203,9 +1203,6 @@ void APlayerPawn::GiveDefaultInventory () { if (player == NULL) return; - // [GRB] Give inventory specified in DECORATE - player->health = GetDefault ()->health; - // HexenArmor must always be the first item in the inventory because // it provides player class based protection that should not affect // any other protection item.