video/legohideanimpresenter: Init, dtor, most of destroy function

This commit is contained in:
Joshua Peisach 2024-01-17 09:18:49 -05:00
parent aaa18bc9e2
commit 67e2703dd7
No known key found for this signature in database
GPG Key ID: 41C3D4189AFEDB5A
2 changed files with 23 additions and 3 deletions

View File

@ -1,6 +1,7 @@
#ifndef LEGOHIDEANIMPRESENTER_H
#define LEGOHIDEANIMPRESENTER_H
#include "decomp.h"
#include "legoloopinganimpresenter.h"
// VTABLE: LEGO1 0x100d9278
@ -25,6 +26,9 @@ class LegoHideAnimPresenter : public LegoLoopingAnimPresenter {
private:
void Init();
void Destroy(MxBool p_fromDestructor);
undefined4* m_unk0xc0; // 0xc0
};
// SYNTHETIC: LEGO1 0x1006d9d0

View File

@ -1,18 +1,34 @@
#include "legohideanimpresenter.h"
DECOMP_SIZE_ASSERT(LegoHideAnimPresenter, 0xc4)
// FUNCTION: LEGO1 0x1006d7e0
LegoHideAnimPresenter::LegoHideAnimPresenter()
{
Init();
}
// STUB: LEGO1 0x1006d9f0
// FUNCTION: LEGO1 0x1006d9f0
LegoHideAnimPresenter::~LegoHideAnimPresenter()
{
// TODO
Destroy(TRUE);
}
// STUB: LEGO1 0x1006da50
// FUNCTION: LEGO1 0x1006da50
void LegoHideAnimPresenter::Init()
{
this->m_unk0xc0 = NULL;
}
// STUB: LEGO1 0x1006da60
void LegoHideAnimPresenter::Destroy(MxBool p_fromDestructor)
{
m_criticalSection.Enter();
if(!this->m_unk0xc0)
delete this->m_unk0xc0;
Init();
m_criticalSection.Leave();
// if (!p_fromDestructor)
// TODO: another function
}