diff --git a/LEGO1/lego/legoomni/include/animstate.h b/LEGO1/lego/legoomni/include/animstate.h index a6179cfd..507858be 100644 --- a/LEGO1/lego/legoomni/include/animstate.h +++ b/LEGO1/lego/legoomni/include/animstate.h @@ -3,31 +3,31 @@ #include "legostate.h" +// SIZE 0x30 struct ModelInfo { - char* m_modelName; // 0x00 - MxU8 m_unk0x04; // 0x04 - float m_location[3]; // 0x08 - float m_direction[3]; // 0x14 - float m_up[3]; // 0x20 - MxU8 m_unk0x2c; // 0x2c - undefined m_unk0x2d[3]; // 0x2d + char* m_modelName; // 0x00 + MxU8 m_unk0x04; // 0x04 + float m_location[3]; // 0x08 + float m_direction[3]; // 0x14 + float m_up[3]; // 0x20 + MxU8 m_unk0x2c; // 0x2c }; +// SIZE 0x30 struct AnimInfo { - char* m_animName; // 0x00 - undefined4 m_unk0x04; // 0x04 - MxS16 m_unk0x08; // 0x08 - MxU8 m_unk0x0a; // 0x0a - MxU8 m_unk0x0b; // 0x0b - MxU8 m_unk0x0c; // 0x0c - MxU8 m_unk0x0d; // 0x0d - MxU32 m_unk0x10[4]; // 0x10 - MxU8 m_modelCount; // 0x20 - ModelInfo* m_models; // 0x24 - MxU8 m_unk0x28; // 0x28 - MxU8 m_unk0x29; // 0x29 - MxS8 m_unk0x2a[3]; // 0x2a - undefined m_unk0x2d[3]; // 0x2d + char* m_animName; // 0x00 + undefined4 m_unk0x04; // 0x04 + MxS16 m_unk0x08; // 0x08 + MxU8 m_unk0x0a; // 0x0a + MxU8 m_unk0x0b; // 0x0b + MxU8 m_unk0x0c; // 0x0c + MxU8 m_unk0x0d; // 0x0d + MxU32 m_unk0x10[4]; // 0x10 + MxU8 m_modelCount; // 0x20 + ModelInfo* m_models; // 0x24 + MxU8 m_unk0x28; // 0x28 + MxU8 m_unk0x29; // 0x29 + MxS8 m_unk0x2a[3]; // 0x2a }; // VTABLE: LEGO1 0x100d8d80 diff --git a/LEGO1/lego/legoomni/include/legoanimationmanager.h b/LEGO1/lego/legoomni/include/legoanimationmanager.h index 81bb5943..beaf23a4 100644 --- a/LEGO1/lego/legoomni/include/legoanimationmanager.h +++ b/LEGO1/lego/legoomni/include/legoanimationmanager.h @@ -5,18 +5,11 @@ #include "decomp.h" #include "mxcore.h" +// SIZE 0x18 struct Character { - char* m_name; - undefined m_unk0x4[0x10]; // 0x04 - MxBool m_active; // 0x14 - undefined m_unk0x15; // 0x15 - undefined m_unk0x16; // 0x16 - undefined m_unk0x17; // 0x17 -}; - -struct Vehicle { - char* m_name; // 0x00 - undefined4 m_unk0x4; // 0x04 + char* m_name; // 0x00 + undefined m_unk0x04[0x10]; // 0x04 + MxBool m_active; // 0x14 }; void LegoUnknown100d8ca8Handler(); diff --git a/LEGO1/lego/legoomni/src/common/animstate.cpp b/LEGO1/lego/legoomni/src/common/animstate.cpp index 71323c7a..4a4aa53f 100644 --- a/LEGO1/lego/legoomni/src/common/animstate.cpp +++ b/LEGO1/lego/legoomni/src/common/animstate.cpp @@ -1,6 +1,8 @@ #include "animstate.h" -DECOMP_SIZE_ASSERT(AnimState, 0x1c); +DECOMP_SIZE_ASSERT(AnimState, 0x1c) +DECOMP_SIZE_ASSERT(ModelInfo, 0x30) +DECOMP_SIZE_ASSERT(AnimInfo, 0x30) // FUNCTION: LEGO1 0x10064ff0 AnimState::AnimState() @@ -20,11 +22,13 @@ AnimState::~AnimState() // STUB: LEGO1 0x100651d0 void AnimState::FUN_100651d0(MxU32, AnimInfo*, MxU32&) { + // TODO } // STUB: LEGO1 0x10065240 void AnimState::FUN_10065240(MxU32, AnimInfo*, MxU32) { + // TODO } // STUB: LEGO1 0x100652d0