- Fixed: When PlayerIsGone() destroys a morphed player, it needs to destroy the unmorphed player too.

- Fixed: Destroying a morphed player would try to unmorph the player twice.

SVN r3611 (trunk)
This commit is contained in:
Randy Heit 2012-05-01 03:43:14 +00:00
commit 1656744827
5 changed files with 31 additions and 17 deletions

View file

@ -612,6 +612,11 @@ void PlayerIsGone (int netnode, int netconsole)
P_DisconnectEffect (players[netconsole].mo);
players[netconsole].mo->player = NULL;
players[netconsole].mo->Destroy ();
if (!(players[netconsole].mo->ObjectFlags & OF_EuthanizeMe))
{ // We just destroyed a morphed player, so now the original player
// has taken their place. Destroy that one too.
players[netconsole].mo->Destroy();
}
players[netconsole].mo = NULL;
players[netconsole].camera = NULL;
}