Updated xmaterialtexturedefinfo

This commit is contained in:
njohnson 2025-09-07 23:16:06 -04:00
parent fd7f466578
commit cd7c65ef4a
2 changed files with 28 additions and 2 deletions

View File

@ -1,9 +1,20 @@
#include "xmaterialtexturedefinfo.h" #include "xmaterialtexturedefinfo.h"
#include "xmaterialtexturedef.h"
XMaterialTextureDefInfo::XMaterialTextureDefInfo() XMaterialTextureDefInfo::XMaterialTextureDefInfo()
: XAsset() : XAsset()
, mImage() , mImage()
, mWater() , mWater()
, aParent(nullptr)
{
}
XMaterialTextureDefInfo::XMaterialTextureDefInfo(XMaterialTextureDef &aParent)
: XAsset()
, mImage()
, mWater()
, aParent(&aParent)
{ {
} }
@ -15,7 +26,18 @@ XMaterialTextureDefInfo::~XMaterialTextureDefInfo()
void XMaterialTextureDefInfo::ParseData(QDataStream *aStream) void XMaterialTextureDefInfo::ParseData(QDataStream *aStream)
{ {
mImage.ParsePtr(aStream, false);
if (aParent->GetSemantic() == 11) {
if (mImage.GetPtr() == -1)
{
mWater.ParseData(aStream);
}
}
else
{
mImage.ParseData(aStream);
}
} }
void XMaterialTextureDefInfo::Clear() void XMaterialTextureDefInfo::Clear()

View File

@ -5,10 +5,13 @@
#include "xgfximage.h" #include "xgfximage.h"
#include "xwater.h" #include "xwater.h"
class XMaterialTextureDef;
class XMaterialTextureDefInfo : public XAsset class XMaterialTextureDefInfo : public XAsset
{ {
public: public:
XMaterialTextureDefInfo(); explicit XMaterialTextureDefInfo();
XMaterialTextureDefInfo(XMaterialTextureDef& aParent);
~XMaterialTextureDefInfo(); ~XMaterialTextureDefInfo();
virtual void ParseData(QDataStream* aStream) override; virtual void ParseData(QDataStream* aStream) override;
@ -17,6 +20,7 @@ public:
private: private:
XGfxImage mImage; XGfxImage mImage;
XWater mWater; XWater mWater;
XMaterialTextureDef* aParent;
}; };
#endif // XMATERIALTEXTUREDEFINFO_H #endif // XMATERIALTEXTUREDEFINFO_H