#ifndef XDYNENTITYDEF_H
#define XDYNENTITYDEF_H

#include "xasset.h"
#include "xfxeffectdef.h"
#include "xgfxplacement.h"
#include "xmodel.h"
#include "xmodelpieces.h"

enum XDynEntityType
{
    DYNENT_TYPE_INVALID = 0x0,
    DYNENT_TYPE_CLUTTER = 0x1,
    DYNENT_TYPE_DESTRUCT = 0x2,
    DYNENT_TYPE_COUNT = 0x3,
};

class XDynEntityDef : public XAsset
{
public:
    explicit XDynEntityDef();
    ~XDynEntityDef();

    void ParseData(XDataStream *aStream) override;
    void Clear() override;

private:
    XDynEntityType mType;
    XGfxPlacement mPose;
    XModel mModel;
    quint32 mBrushModel;
    quint32 mPhysicsBrushModel;
    XFxEffectDef mDestroyFx;
    XModelPieces mDestroyPieces;
    XPhysPreset mPhysPreset;
    int mHealth;
    XPhysMass mMass;
    int mContents;
};

#endif // XDYNENTITYDEF_H








