- Fixed: Thing_ChangeTid must check whether the actor whose tid is about to

be changed is scheduled for destruction.
- Fixed: G_FinishTravel added the player to the hash chain twice.
- Fixed: The animations for Doom's E3 intermission used incorrect patch names.
- Added a check for MF_NOLIFTDROP to PIT_CeilingRaise because the overlapping 
  bridges in 007LTSD got moved by this function.

SVN r136 (trunk)
This commit is contained in:
Christoph Oelckers 2006-05-22 09:53:09 +00:00
commit 7f2ac35dce
5 changed files with 28 additions and 17 deletions

View file

@ -885,7 +885,7 @@ FUNC(LS_Thing_ChangeTID)
{
if (arg0 == 0)
{
if (it != NULL)
if (it != NULL && !(it->ObjectFlags & OF_MassDestruction))
{
it->RemoveFromHash ();
it->tid = arg1;
@ -900,12 +900,15 @@ FUNC(LS_Thing_ChangeTID)
next = iterator.Next ();
while (next != NULL)
{
actor = next;
next = iterator.Next ();
if (!(next->ObjectFlags & OF_MassDestruction))
{
actor = next;
next = iterator.Next ();
actor->RemoveFromHash ();
actor->tid = arg1;
actor->AddToHash ();
actor->RemoveFromHash ();
actor->tid = arg1;
actor->AddToHash ();
}
}
}
return true;