lego1: match LegoOmni::GetInstance and deconstructor and add a few methods (#58)

* add GetInstance fix

* Implement a few methods

* Move get* helpers to their correct locations

* rename m_instance

* add TransitionManager
This commit is contained in:
MishaProductions
2023-06-29 20:02:47 +03:00
committed by GitHub
parent 6558a78848
commit 88c18c76ed
4 changed files with 107 additions and 17 deletions

View File

@@ -1,7 +1,7 @@
#include "mxomni.h"
// 0x101015b0
MxOmni* MxOmni::m_instance = NULL;
MxOmni *MxOmni::g_instance = NULL;
// OFFSET: LEGO1 0x100aef10
MxOmni::MxOmni()
@@ -33,10 +33,26 @@ void MxOmni::Init()
m_unk64 = NULL;
}
// OFFSET: LEGO1 0x100b0690
void MxOmni::DestroyInstance()
{
if (g_instance != NULL)
{
delete g_instance;
g_instance = NULL;
}
}
// OFFSET: LEGO1 0x100b0680
MxOmni *MxOmni::GetInstance()
{
return m_instance;
return g_instance;
}
// OFFSET: LEGO1 0x100af0b0
void MxOmni::SetInstance(MxOmni *instance)
{
g_instance = instance;
}
// OFFSET: LEGO1 0x100af0c0
@@ -67,8 +83,62 @@ long MxOmni::Notify(MxParam &p)
return 0;
}
// OFFSET: LEGO1 0x100acea0
MxObjectFactory *ObjectFactory()
{
return MxOmni::GetInstance()->GetObjectFactory();
}
// OFFSET: LEGO1 0x100aceb0
MxNotificationManager *NotificationManager()
{
return MxOmni::GetInstance()->GetNotificationManager();
}
// OFFSET: LEGO1 0x100acec0
MxTickleManager *TickleManager()
{
return MxOmni::GetInstance()->GetTickleManager();
}
// OFFSET: LEGO1 0x100aced0
MxTimer *Timer()
{
return MxOmni::GetInstance()->GetTimer();
}
// OFFSET: LEGO1 0x100acef0
MxStreamer* Streamer()
{
return MxOmni::GetInstance()->GetStreamer();
}
// OFFSET: LEGO1 0x100acf00
MxSoundManager* MSoundManager()
{
return MxOmni::GetInstance()->GetSoundManager();
}
// OFFSET: LEGO1 0x100acf10
MxVideoManager* MVideoManager()
{
return MxOmni::GetInstance()->GetVideoManager();
}
// OFFSET: LEGO1 0x100acf20
MxVariableTable* VariableTable()
{
return MxOmni::GetInstance()->GetVariableTable();
}
// OFFSET: LEGO1 0x100acf30
MxMusicManager* MusicManager()
{
return MxOmni::GetInstance()->GetMusicManager();
}
// OFFSET: LEGO1 0x100acf40
MxEventManager* EventManager()
{
return MxOmni::GetInstance()->GetEventManager();
}