From 10519b5cd1de1d456b31e978c293daa7427cd848 Mon Sep 17 00:00:00 2001 From: JJ Date: Sat, 20 Apr 2024 11:00:44 -0400 Subject: [PATCH] # Description This fixes corpses "disappearing" by fixing the graveyard check. Prior to the corpse overhaul (#3938), moving corpses to graveyards was assumed successful and automatically removed from the process. Note: Will open a separate issue for the graveyard timer handling. ## Type of change Please delete options that are not relevant. - [x] Bug fix (non-breaking change which fixes an issue) # Testing Attach images and describe testing done to validate functionality. Clients tested: RoF2 # Checklist - [x] I have tested my changes - [x] I have performed a self-review of my code. Ensuring variables, functions and methods are named in a human-readable way, comments are added only where naming of variables, functions and methods can't give enough context. - [x] I own the changes of my code and take responsibility for the potential issues that occur --- zone/corpse.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/zone/corpse.cpp b/zone/corpse.cpp index 764eefd089..531ba6ddd2 100644 --- a/zone/corpse.cpp +++ b/zone/corpse.cpp @@ -991,9 +991,11 @@ bool Corpse::Process() } if (m_corpse_graveyard_timer.Check()) { - MovePlayerCorpseToGraveyard(); - m_corpse_graveyard_timer.Disable(); - return false; + if (MovePlayerCorpseToGraveyard()) { + m_corpse_graveyard_timer.Disable(); + return false; + } + return true; // If the corpse was not moved, continue the corpse in the process rather than put in limbo } // Player is offline. If rez timer is enabled, disable it and save corpse.