From 9a957138b547810e204d0e74a28edfb4c529340f Mon Sep 17 00:00:00 2001 From: njohnson Date: Sun, 7 Sep 2025 23:16:10 -0400 Subject: [PATCH] Updated xmodelpieces --- libs/xassets/xmodelpieces.cpp | 26 +++++++++++++++++++++++--- libs/xassets/xmodelpieces.h | 2 +- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/libs/xassets/xmodelpieces.cpp b/libs/xassets/xmodelpieces.cpp index b15e0fc..bd1789a 100644 --- a/libs/xassets/xmodelpieces.cpp +++ b/libs/xassets/xmodelpieces.cpp @@ -2,7 +2,7 @@ XModelPieces::XModelPieces() : XAsset() - , mName("") + , mName() , mNumPieces(0) , mPieces() { @@ -17,12 +17,32 @@ XModelPieces::~XModelPieces() void XModelPieces::ParseData(QDataStream *aStream) { - + if (GetPtr() == -1) + { + mName.ParsePtr(aStream, false); + + qint32 piecesPtr; + *aStream + >> mNumPieces + >> piecesPtr; + + mName.ParseData(aStream); + + if (piecesPtr) + { + for (int i = 0; i < mNumPieces; i++) + { + XModelPiece newPiece; + newPiece.ParseData(aStream); + mPieces.append(newPiece); + } + } + } } void XModelPieces::Clear() { - mName.clear(); + mName.Clear(); mNumPieces = 0; mPieces.clear(); } diff --git a/libs/xassets/xmodelpieces.h b/libs/xassets/xmodelpieces.h index 87b598d..ff9b06d 100644 --- a/libs/xassets/xmodelpieces.h +++ b/libs/xassets/xmodelpieces.h @@ -14,7 +14,7 @@ public: virtual void Clear() override; private: - QString mName; + XString mName; int mNumPieces; QVector mPieces; };