- changed handling of one-time, one-way door polyobjects to be more efficient.

The old code kept the dead thinker, resulting in constant deletion and recreation of the subsector links and PolyBSP because the interpolation kept running.
Changed it so that the thinker is destroyed and the polyobject gets blocked by setting a new flag.
This commit is contained in:
Christoph Oelckers 2016-04-17 01:24:07 +02:00
commit 6a27267500
4 changed files with 24 additions and 7 deletions

View file

@ -540,6 +540,14 @@ void P_SerializePolyobjs (FArchive &arc)
for(i = 0, po = polyobjs; i < po_NumPolyobjs; i++, po++)
{
arc << po->tag << po->Angle << po->StartSpot.pos << po->interpolation;
if (SaveVersion >= 4537)
{
arc << po->bBlocked;
}
else
{
po->bBlocked = false;
}
}
}
else