- most thinkers are done. Some stuff about polyobject pointers is temporarily disabled right now because some of the required functions have already been pulled out.

This commit is contained in:
Christoph Oelckers 2016-09-19 19:14:30 +02:00
commit e89d072abc
39 changed files with 290 additions and 342 deletions

View file

@ -44,6 +44,7 @@
#include "w_wad.h"
#include "g_level.h"
#include "farchive.h"
#include "serializer.h"
// MACROS ------------------------------------------------------------------
@ -990,17 +991,13 @@ void FTextureManager::UpdateAnimations (DWORD mstime)
//
//==========================================================================
template<> FArchive &operator<< (FArchive &arc, FDoorAnimation* &Doorani)
template<> FSerializer &Serialize(FSerializer &arc, const char *key, FDoorAnimation *&p, FDoorAnimation **def)
{
if (arc.IsStoring())
FTextureID tex = p->BaseTexture;
Serialize(arc, key, tex, def ? &(*def)->BaseTexture : nullptr);
if (arc.isReading())
{
arc << Doorani->BaseTexture;
}
else
{
FTextureID tex;
arc << tex;
Doorani = TexMan.FindAnimatedDoor(tex);
p = TexMan.FindAnimatedDoor(tex);
}
return arc;
}