From a53ae10874747477c9abde10bc823d50201af53d Mon Sep 17 00:00:00 2001 From: gromchek Date: Sat, 20 Sep 2025 23:00:56 +0300 Subject: [PATCH] feat(profile): CDetailDoodadInst struct --- profile/3.3.5a-windows-386/include/main.h | 1 + .../include/map/CDetailDoodadInst.h | 50 +++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 profile/3.3.5a-windows-386/include/map/CDetailDoodadInst.h diff --git a/profile/3.3.5a-windows-386/include/main.h b/profile/3.3.5a-windows-386/include/main.h index 13c2ed8..79ffb79 100644 --- a/profile/3.3.5a-windows-386/include/main.h +++ b/profile/3.3.5a-windows-386/include/main.h @@ -83,6 +83,7 @@ #include "map/WMOchunks.h" #include "map/CMapObj.h" #include "map/CChunkLiquid.h" +#include "map/CDetailDoodadInst.h" #include "net/message.h" diff --git a/profile/3.3.5a-windows-386/include/map/CDetailDoodadInst.h b/profile/3.3.5a-windows-386/include/map/CDetailDoodadInst.h new file mode 100644 index 0000000..83cddea --- /dev/null +++ b/profile/3.3.5a-windows-386/include/map/CDetailDoodadInst.h @@ -0,0 +1,50 @@ +#ifndef CDETAILDOODADINST_H +#define CDETAILDOODADINST_H + +DECLARE_STRUCT(CDetailDoodadGeomVertex); +DECLARE_STRUCT(CDetailDoodadGeom); +DECLARE_STRUCT(CDetailDoodadInst); + +#include "system/types.h" +#include "texture/texture.h" +#include "tempest/vector.h" +#include "storm/array.h" + +struct CMapChunk; + +struct CDetailDoodadGeomVertex +{ + uint16_t unk_00; + uint16_t unk_02; + uint32_t unk_04; + C3Vector pos; + float angle; + float scale; + C3Vector unkVec; + uint32_t color; +}; + +STORM_TS_GROWABLE_ARRAY(CDetailDoodadGeomVertex); + +struct CDetailDoodadGeom +{ + CTexture* texture; + int32_t unkVertexCount; + int32_t unkIndexCount; + void* unkVertBufStream; + void* unkIdxBufStream; + TSGrowableArray_CDetailDoodadGeomVertex data; +}; + +struct CDetailDoodadInst +{ + int32_t objectIndex; + CDetailDoodadGeom geom[4]; + int32_t unkCounter; + CMapChunk* mapChunkOwner; + int32_t unk_09C; + int32_t unk_0A0; +}; + + +#endif \ No newline at end of file