Implement/match LegoAnimationManager::FUN_1005f6d0 and FUN_1005f700

This commit is contained in:
Christian Semmler 2024-04-30 06:31:18 -04:00
parent 60796eff74
commit 645601405f
2 changed files with 29 additions and 13 deletions

View File

@ -69,8 +69,8 @@ class LegoAnimationManager : public MxCore {
void Reset(MxBool p_und);
void Suspend();
void Resume();
void FUN_1005f6d0(MxBool);
void FUN_1005f700(MxBool);
void FUN_1005f6d0(MxBool p_unk0x400);
void FUN_1005f700(MxBool p_unk0x3a);
MxResult LoadScriptInfo(MxS32 p_scriptIndex);
MxBool FindVehicle(const char* p_name, MxU32& p_index);
MxResult ReadAnimInfo(LegoFile* p_file, AnimInfo* p_info);
@ -139,7 +139,7 @@ class LegoAnimationManager : public MxCore {
undefined m_unk0x3a; // 0x3a
Unknown0x3c m_unk0x3c[40]; // 0x3c
undefined4 m_unk0x3fc; // 0x3fc
MxU8 m_unk0x400; // 0x400
MxBool m_unk0x400; // 0x400
undefined m_unk0x401; // 0x401
MxU8 m_unk0x402; // 0x402
MxLong m_unk0x404; // 0x404
@ -152,7 +152,7 @@ class LegoAnimationManager : public MxCore {
AnimState* m_animState; // 0x420
LegoROIList* m_unk0x424; // 0x424
undefined m_unk0x428; // 0x428
undefined m_unk0x429; // 0x429
MxBool m_unk0x429; // 0x429
undefined m_unk0x42a; // 0x42a
MxBool m_suspended; // 0x42b
undefined4 m_unk0x42c; // 0x42c

View File

@ -237,7 +237,7 @@ void LegoAnimationManager::Suspend()
m_unk0x18 = 0;
m_unk0x1a = 0;
m_unk0x3a = 0;
m_unk0x400 = 0;
m_unk0x400 = FALSE;
m_unk0x414 = 0;
m_unk0x401 = 0;
@ -292,7 +292,7 @@ void LegoAnimationManager::Init()
m_unk0x39 = FALSE;
m_unk0x3a = 1;
m_unk0x3fc = 0;
m_unk0x400 = 0;
m_unk0x400 = FALSE;
m_unk0x414 = 0;
m_unk0x418 = 5;
m_unk0x0e = 0;
@ -322,16 +322,32 @@ void LegoAnimationManager::Init()
m_unk0x424 = new LegoROIList();
}
// STUB: LEGO1 0x1005f6d0
void LegoAnimationManager::FUN_1005f6d0(MxBool)
// FUNCTION: LEGO1 0x1005f6d0
// FUNCTION: BETA10 0x100401e7
void LegoAnimationManager::FUN_1005f6d0(MxBool p_unk0x400)
{
// TODO
if (m_suspended) {
m_unk0x429 = p_unk0x400;
}
else {
m_unk0x400 = p_unk0x400;
if (!p_unk0x400) {
FUN_100627d0(TRUE);
}
}
}
// STUB: LEGO1 0x1005f700
void LegoAnimationManager::FUN_1005f700(MxBool)
// FUNCTION: LEGO1 0x1005f700
// FUNCTION: BETA10 0x1004024c
void LegoAnimationManager::FUN_1005f700(MxBool p_unk0x3a)
{
// TODO
if (m_suspended) {
m_unk0x428 = p_unk0x3a;
}
else {
m_unk0x3a = p_unk0x3a;
}
}
// FUNCTION: LEGO1 0x1005f720
@ -478,7 +494,7 @@ MxResult LegoAnimationManager::LoadScriptInfo(MxS32 p_scriptIndex)
m_unk0x429 = m_unk0x400;
m_unk0x42a = 1;
m_unk0x3a = 0;
m_unk0x400 = 0;
m_unk0x400 = FALSE;
m_unk0x402 = 0;
}