From 89d1d0944a92ffac4a185c1688f85acc480f1015 Mon Sep 17 00:00:00 2001 From: Nicholas Johnson Date: Wed, 3 Sep 2025 13:03:14 -0400 Subject: [PATCH] Update zonefile structures and project files --- libs/zonefile/360/zonefile_cod4_360.cpp | 45 ++++--------------------- libs/zonefile/zonefile.cpp | 4 +-- libs/zonefile/zonefile.h | 8 ++--- libs/zonefile/zonefile.pro | 6 ++-- 4 files changed, 15 insertions(+), 48 deletions(-) diff --git a/libs/zonefile/360/zonefile_cod4_360.cpp b/libs/zonefile/360/zonefile_cod4_360.cpp index 0518b32..b818b9d 100644 --- a/libs/zonefile/360/zonefile_cod4_360.cpp +++ b/libs/zonefile/360/zonefile_cod4_360.cpp @@ -1,6 +1,7 @@ #include "zonefile_cod4_360.h" #include "utils.h" -#include "file.h" +#include "xassetlist.h" +#include "xfile.h" #include "assetlist.h" #include @@ -21,48 +22,14 @@ bool ZoneFile_COD4_360::Load(const QByteArray aFileData) { // DB_LoadXFileData() XFile headerData; - zoneStream >> headerData.size << headerData.externalSize; - for (int i = 0; i < 7; i++) { - zoneStream >> headerData.blockSize[i]; - } + headerData.ParseData(&zoneStream); // Load_XAssetListCustom(); XAssetList assetList; - zoneStream >> assetList.stringList.count; + assetList.ParseData(&zoneStream); + + assetList.GetStringList().ParseData(&zoneStream); zoneStream.skipRawData(4); - zoneStream >> assetList.assetCount; - zoneStream.skipRawData(4); - - zoneStream.skipRawData(4); - - for (int i = 0; i < assetList.stringList.count; i++) { - qint32 stringPtr; - zoneStream >> stringPtr; - - assetList.stringList.stringPtrs.append(stringPtr); - } - - for (int i = 0; i < assetList.stringList.count; i++) { - qint32 currentStringPtr = assetList.stringList.stringPtrs[i]; - if (currentStringPtr == -1) { - QString currentString; - char currentChar; - - zoneStream >> currentChar; - while (currentChar != '\0') { - currentString.append(currentChar); - zoneStream >> currentChar; - } - assetList.stringList.scriptStrings.append(currentString); - } - } - zoneStream.skipRawData(4); - - for (int i = 0; i < assetList.assetCount; i++) { - XAsset asset; - zoneStream >> asset.type; - zoneStream.skipRawData(4); - } // for (int i = 0; i < assetList.assetCount; i++) { // XAssetType type = assetList.assets[i].type; diff --git a/libs/zonefile/zonefile.cpp b/libs/zonefile/zonefile.cpp index c52fb21..cf329a4 100644 --- a/libs/zonefile/zonefile.cpp +++ b/libs/zonefile/zonefile.cpp @@ -70,8 +70,8 @@ QStringList ZoneFile::GetRecords() { return mRecords; } -AssetMap ZoneFile::GetAssetMap() { - return mAssetMap; +QVector ZoneFile::GetAssetList() { + return mAssetList; } void ZoneFile::SetStem(const QString aStem) { diff --git a/libs/zonefile/zonefile.h b/libs/zonefile/zonefile.h index df08c11..aaae555 100644 --- a/libs/zonefile/zonefile.h +++ b/libs/zonefile/zonefile.h @@ -1,7 +1,7 @@ #ifndef ZONEFILE_H #define ZONEFILE_H -#include "assetmap.h" +#include "xasset.h" #include "utils.h" #include @@ -28,7 +28,7 @@ public: QStringList GetTags(); quint32 GetRecordCount(); QStringList GetRecords(); - AssetMap GetAssetMap(); + QVector GetAssetList(); void SetStem(const QString aStem); void SetSize(quint32 aSize); @@ -36,7 +36,7 @@ public: void SetTags(const QStringList aTags); void SetRecordCount(quint32 aRecordCount); void SetRecords(const QStringList aRecords); - void SetAssetMap(const AssetMap aAssetMap); + void SetAssetList(const QVector aAssetList); private: QString mStem; @@ -45,7 +45,7 @@ private: QStringList mTags; quint32 mRecordCount; QStringList mRecords; - AssetMap mAssetMap; + QVector mAssetList; QString mPlatform; QString mGame; }; diff --git a/libs/zonefile/zonefile.pro b/libs/zonefile/zonefile.pro index 18394fd..d384a53 100644 --- a/libs/zonefile/zonefile.pro +++ b/libs/zonefile/zonefile.pro @@ -6,14 +6,14 @@ SOURCES += $$files($$PWD/*.cpp, true) HEADERS += $$files($$PWD/*.h, true) LIBS += \ - -L$$OUT_PWD/../ -lcore -lassets + -L$$OUT_PWD/../ -lcore -lxassets INCLUDEPATH += \ $$PWD/../core \ - $$PWD/../assets + $$PWD/../xassets DEPENDPATH += \ $$PWD/../core \ - $$PWD/../assets + $$PWD/../xassets DESTDIR = $$OUT_PWD/../