diff --git a/libs/xassets/xfxelemdef.cpp b/libs/xassets/xfxelemdef.cpp new file mode 100644 index 0000000..cc47d8b --- /dev/null +++ b/libs/xassets/xfxelemdef.cpp @@ -0,0 +1,97 @@ +#include "xfxelemdef.h" + +XFxElemDef::XFxElemDef() + : XAsset() + , mFlags(0) + , mSpawn() + , mSpawnRange() + , mFadeInRange() + , mFadeOutRange() + , mSpawnFrustumCullRadius(0) + , mSpawnDelayMsec() + , mLifeSpanMsec() + , mSpawnOrigin() + , mSpawnOffsetRadius() + , mSpawnOffsetHeight() + , mSpawnAngles() + , mAngularVelocity() + , mInitialRotation() + , mGravity() + , mReflectionFactor() + , mAtlas() + , mElemType(0) + , mVisualCount(0) + , mVelIntervalCount(0) + , mVisStateIntervalCount(0) + , mVelSamplesPtr(0) + , mVelSamples() + , mVisSamplesPtr(0) + , mVisSamples() + , mVisuals() + , mCollMins() + , mCollMaxs() + , mEffectOnImpact() + , mEffectOnDeath() + , mEffectEmitted() + , mEmitDist() + , mEmitDistVariance() + , mTrailDefPtr(0) + , mTrailDef(new XFxTrailDef()) + , mSortOrder(0) + , mLightingFrac(0) + , mUseItemClip(0) +{ + +} + +XFxElemDef::~XFxElemDef() +{ + +} + +void XFxElemDef::Clear() +{ + mFlags = 0; + mSpawn.Clear(); + mSpawnRange = FxFloatRange(); + mFadeInRange = FxFloatRange(); + mFadeOutRange = FxFloatRange(); + mSpawnFrustumCullRadius = 0; + mSpawnDelayMsec = FxIntRange(); + mLifeSpanMsec = FxIntRange(); + mSpawnOrigin = QVector(); + mSpawnOffsetRadius = FxFloatRange(); + mSpawnOffsetHeight = FxFloatRange(); + mSpawnAngles = QVector(); + mAngularVelocity = QVector(); + mInitialRotation = FxFloatRange(); + mGravity = FxFloatRange(); + mReflectionFactor = FxFloatRange(); + mAtlas = FxElemAtlas(); + mElemType = 0; + mVisualCount = 0; + mVelIntervalCount = 0; + mVisStateIntervalCount = 0; + mVelSamplesPtr = 0; + mVelSamples = QVector(); + mVisSamplesPtr = 0; + mVisSamples = QVector(); + mVisuals = FxElemDefVisuals(); + mCollMins = QVector3D(); + mCollMaxs = QVector3D(); + mEffectOnImpact = ; + mEffectOnDeath = ; + mEffectEmitted = ; + mEmitDist = ; + mEmitDistVariance = ; + mTrailDefPtr = 0; + mTrailDef = new XFxTrailDef = ;; + mSortOrder = 0; + mLightingFrac = 0; + mUseItemClip = 0; +} + +void XFxElemDef::ParseData(QDataStream *aStream) +{ + +} diff --git a/libs/xassets/xfxelemdef.h b/libs/xassets/xfxelemdef.h new file mode 100644 index 0000000..1dc194f --- /dev/null +++ b/libs/xassets/xfxelemdef.h @@ -0,0 +1,60 @@ +#ifndef XFXELEMDEF_H +#define XFXELEMDEF_H + +#include "xasset.h" +#include "xeffectdef.h" +#include "xfxtraildef.h" + +class XFxElemDef : public XAsset +{ +public: + explicit XFxElemDef(); + ~XFxElemDef(); + + void Clear() override; + void ParseData(QDataStream *aStream) override; + +private: + int mFlags; + FxSpawnDef mSpawn; + FxFloatRange mSpawnRange; + FxFloatRange mFadeInRange; + FxFloatRange mFadeOutRange; + float mSpawnFrustumCullRadius; + FxIntRange mSpawnDelayMsec; + FxIntRange mLifeSpanMsec; + QVector mSpawnOrigin; + FxFloatRange mSpawnOffsetRadius; + FxFloatRange mSpawnOffsetHeight; + QVector mSpawnAngles; + QVector mAngularVelocity; + FxFloatRange mInitialRotation; + FxFloatRange mGravity; + FxFloatRange mReflectionFactor; + FxElemAtlas mAtlas; + quint8 mElemType; + quint8 mVisualCount; + quint8 mVelIntervalCount; + quint8 mVisStateIntervalCount; + qint32 mVelSamplesPtr; + QVector mVelSamples; + qint32 mVisSamplesPtr; + QVector mVisSamples; + FxElemDefVisuals mVisuals; + QVector3D mCollMins; + QVector3D mCollMaxs; + EffectDefRef mEffectOnImpact; + EffectDefRef mEffectOnDeath; + EffectDefRef mEffectEmitted; + FxFloatRange mEmitDist; + FxFloatRange mEmitDistVariance; + + qint32 mTrailDefPtr; + XFxTrailDef *mTrailDef; + + quint8 mSortOrder; + quint8 mLightingFrac; + quint8 mUseItemClip; +}; + +#endif // XFXELEMDEF_H