From 53f690c5542db3276b5d159d127ffa92a18d3e70 Mon Sep 17 00:00:00 2001 From: njohnson Date: Sun, 7 Sep 2025 23:16:13 -0400 Subject: [PATCH] Updated xsunflare --- libs/xassets/xsunflare.cpp | 69 +++++++++++++++++++++++++++++++++----- libs/xassets/xsunflare.h | 10 +++--- 2 files changed, 66 insertions(+), 13 deletions(-) diff --git a/libs/xassets/xsunflare.cpp b/libs/xassets/xsunflare.cpp index a8d9ae6..2805c20 100644 --- a/libs/xassets/xsunflare.cpp +++ b/libs/xassets/xsunflare.cpp @@ -1,10 +1,10 @@ #include "xsunflare.h" -XSunflare::XSunflare() +XSunFlare::XSunFlare() : XAsset() , mHasValidData(false) - , mSpriteMaterial(new XMaterial()) - , mFlareMaterial(new XMaterial()) + , mSpriteMaterial() + , mFlareMaterial() , mSpriteSize(0.0f) , mFlareMinSize(0.0f) , mFlareMinDot(0.0f) @@ -28,17 +28,70 @@ XSunflare::XSunflare() } -XSunflare::~XSunflare() +XSunFlare::~XSunFlare() { } -void XSunflare::ParseData(QDataStream *aStream) +void XSunFlare::ParseData(QDataStream *aStream) { - + *aStream + >> mHasValidData; + + aStream->skipRawData(3); + + mSpriteMaterial.ParsePtr(aStream, false); + mFlareMaterial.ParsePtr(aStream, false); + + *aStream + >> mSpriteSize + >> mFlareMinSize + >> mFlareMinDot + >> mFlareMaxSize + >> mFlareMaxDot + >> mFlareMaxAlpha + >> mFlareFadeInTime + >> mFlareFadeOutTime + >> mBlindMinDot + >> mBlindMaxDot + >> mBlindMaxDarken + >> mBlindFadeInTime + >> mBlindFadeOutTime + >> mGlareMinDot + >> mGlareMaxDot + >> mGlareMaxLighten + >> mGlareFadeInTime + >> mGlareFadeOutTime + >> mSunFxPosition[0] + >> mSunFxPosition[1] + >> mSunFxPosition[2]; + + mSpriteMaterial.ParseData(aStream); + mFlareMaterial.ParseData(aStream); } -void XSunflare::Clear() +void XSunFlare::Clear() { - + mHasValidData = false; + mSpriteMaterial.Clear(); + mFlareMaterial.Clear(); + mSpriteSize = 0.0f; + mFlareMinSize = 0.0f; + mFlareMinDot = 0.0f; + mFlareMaxSize = 0.0f; + mFlareMaxDot = 0.0f; + mFlareMaxAlpha = 0.0f; + mFlareFadeInTime = 0; + mFlareFadeOutTime = 0; + mBlindMinDot = 0.0f; + mBlindMaxDot = 0.0f; + mBlindMaxDarken = 0.0f; + mBlindFadeInTime = 0; + mBlindFadeOutTime = 0; + mGlareMinDot = 0.0f; + mGlareMaxDot = 0.0f; + mGlareMaxLighten = 0.0f; + mGlareFadeInTime = 0; + mGlareFadeOutTime = 0; + mSunFxPosition = QVector3D(); } diff --git a/libs/xassets/xsunflare.h b/libs/xassets/xsunflare.h index 191fd04..3733f82 100644 --- a/libs/xassets/xsunflare.h +++ b/libs/xassets/xsunflare.h @@ -6,19 +6,19 @@ #include -class XSunflare : public XAsset +class XSunFlare : public XAsset { public: - XSunflare(); - ~XSunflare(); + explicit XSunFlare(); + ~XSunFlare(); virtual void ParseData(QDataStream* aStream) override; virtual void Clear() override; private: bool mHasValidData; - XMaterial *mSpriteMaterial; - XMaterial *mFlareMaterial; + XMaterial mSpriteMaterial; + XMaterial mFlareMaterial; float mSpriteSize; float mFlareMinSize; float mFlareMinDot;