Implemented binary serializer classes

This commit is contained in:
parax0
2016-08-23 20:42:05 -06:00
parent 9a243f94ac
commit 3dc0d71403
21 changed files with 519 additions and 43 deletions

View File

@@ -33,13 +33,10 @@ public:
inline void Serialize(IArchive& rArc)
{
bool IsReader = rArc.IsReader();
EGame ActiveGame = gpResourceStore->ActiveProject()->Game();
CAssetID ID = (mpRes && !IsReader ? mpRes->ID() : (ActiveGame <= eEchoes ? CAssetID::skInvalidID32 : CAssetID::skInvalidID64));
CAssetID ID = (mpRes && !rArc.IsReader() ? mpRes->ID() : CAssetID::InvalidID(rArc.Game()));
rArc.SerializePrimitive(ID);
if (IsReader)
if (rArc.IsReader())
{
CResourceEntry *pEntry = gpResourceStore->FindEntry(ID);
*this = (pEntry ? pEntry->Load() : nullptr);