Implement Start() (#176)

* Implement Start()

* Undo isleapp changes

* Implement LegoOmni::Start

* fix vtable0x20

* Address review

* fix build
This commit is contained in:
Misha
2023-10-07 09:05:44 -04:00
committed by GitHub
parent 85fe4ad07a
commit 50b9a6dea5
9 changed files with 70 additions and 15 deletions

View File

@@ -99,11 +99,10 @@ void SetOmniUserMessage(void (*p_userMsg)(const char *,int))
g_omniUserMessage = p_userMsg;
}
// OFFSET: LEGO1 0x100acf50 STUB
MxLong Start(MxDSAction *)
// OFFSET: LEGO1 0x100acf50
MxResult Start(MxDSAction* p_dsAction)
{
// TODO
return 0;
return MxOmni::GetInstance()->Start(p_dsAction);
}
// OFFSET: LEGO1 0x1005ad10
@@ -257,6 +256,10 @@ void LegoOmni::Init()
MxResult LegoOmni::Create(COMPAT_CONST MxOmniCreateParam &p)
{
// FIXME: Stub
MxOmni::Create(p);
m_gameState = new LegoGameState();
m_bkgAudioManager = new MxBackgroundAudioManager();
return SUCCESS;
}
@@ -265,9 +268,14 @@ void LegoOmni::Destroy()
// FIXME: Stub
}
void LegoOmni::vtable0x20()
// OFFSET: LEGO1 0x1005b580
MxResult LegoOmni::Start(MxDSAction* action)
{
// FIXME: Stub
MxResult result = MxOmni::Start(action);
this->m_action.SetAtomId(action->GetAtomId());
this->m_action.SetObjectId(action->GetObjectId());
this->m_action.SetUnknown24(action->GetUnknown24());
return result;
}
void LegoOmni::DeleteObject(MxDSAction &ds)