2023-06-11 01:11:05 -04:00
|
|
|
#include "legoomni.h"
|
|
|
|
|
2023-06-30 14:34:39 -04:00
|
|
|
// 0x100f4588
|
|
|
|
char *g_nocdSourceName = NULL;
|
|
|
|
|
|
|
|
// 0x101020e8
|
|
|
|
void (*g_omniUserMessage)(const char *,int);
|
|
|
|
|
2023-06-19 02:19:40 -04:00
|
|
|
// OFFSET: LEGO1 0x10058a00
|
|
|
|
LegoOmni::LegoOmni()
|
|
|
|
{
|
|
|
|
Init();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10058b50
|
|
|
|
LegoOmni::~LegoOmni()
|
|
|
|
{
|
|
|
|
Destroy();
|
|
|
|
}
|
|
|
|
|
2023-06-30 14:34:39 -04:00
|
|
|
// OFFSET: LEGO1 0x1005b560 STUB
|
|
|
|
void LegoOmni::CreateBackgroundAudio()
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1005af10 STUB
|
|
|
|
void LegoOmni::RemoveWorld(const MxAtomId &p1, long p2)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1005b400 STUB
|
|
|
|
int LegoOmni::GetCurrPathInfo(LegoPathBoundary **,int &)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x100b6ff0 STUB
|
|
|
|
void MakeSourceName(char *, const char *)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x100b7210
|
|
|
|
void SetOmniUserMessage(void (*p_userMsg)(const char *,int))
|
|
|
|
{
|
|
|
|
g_omniUserMessage = p_userMsg;
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x100acf50 STUB
|
|
|
|
long Start(MxDSAction *)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2023-06-18 23:56:55 -04:00
|
|
|
// OFFSET: LEGO1 0x1005ad10
|
2023-06-11 01:11:05 -04:00
|
|
|
LegoOmni *LegoOmni::GetInstance()
|
|
|
|
{
|
2023-06-29 13:02:47 -04:00
|
|
|
return (LegoOmni *)MxOmni::GetInstance();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1005ac90
|
|
|
|
void LegoOmni::CreateInstance()
|
|
|
|
{
|
|
|
|
MxOmni::DestroyInstance();
|
|
|
|
MxOmni::SetInstance(new LegoOmni());
|
2023-06-11 01:11:05 -04:00
|
|
|
}
|
|
|
|
|
2023-06-18 23:56:55 -04:00
|
|
|
// OFFSET: LEGO1 0x10015700
|
2023-06-11 01:11:05 -04:00
|
|
|
LegoOmni *Lego()
|
|
|
|
{
|
2023-06-29 13:02:47 -04:00
|
|
|
return (LegoOmni *)MxOmni::GetInstance();
|
2023-06-11 01:11:05 -04:00
|
|
|
}
|
2023-06-18 07:45:39 -04:00
|
|
|
|
2023-06-22 12:23:54 -04:00
|
|
|
// OFFSET: LEGO1 0x10015710
|
|
|
|
LegoSoundManager *SoundManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetSoundManager();
|
|
|
|
}
|
|
|
|
|
2023-06-18 23:56:55 -04:00
|
|
|
// OFFSET: LEGO1 0x10015720
|
2023-06-18 07:45:39 -04:00
|
|
|
LegoVideoManager *VideoManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetVideoManager();
|
2023-06-18 23:56:55 -04:00
|
|
|
}
|
2023-06-19 02:19:40 -04:00
|
|
|
|
2023-06-29 04:10:08 -04:00
|
|
|
// OFFSET: LEGO1 0x100157f0
|
|
|
|
LegoBuildingManager *BuildingManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetLegoBuildingManager();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10015790
|
|
|
|
Isle *GetIsle()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetIsle();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x100157e0
|
|
|
|
LegoPlantManager *PlantManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetLegoPlantManager();
|
|
|
|
}
|
|
|
|
|
2023-06-22 12:23:54 -04:00
|
|
|
// OFFSET: LEGO1 0x10015730
|
|
|
|
MxBackgroundAudioManager *BackgroundAudioManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetBackgroundAudioManager();
|
|
|
|
}
|
|
|
|
|
2023-06-30 14:34:39 -04:00
|
|
|
// OFFSET: LEGO1 0x100c0280 STUB
|
|
|
|
MxDSObject *CreateStreamObject(MxDSFile *,short)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
2023-06-22 12:23:54 -04:00
|
|
|
// OFFSET: LEGO1 0x10015740
|
|
|
|
LegoInputManager *InputManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetInputManager();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10015760
|
|
|
|
LegoGameState *GameState()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetGameState();
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10015780
|
|
|
|
LegoNavController *NavController()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetNavController();
|
|
|
|
}
|
|
|
|
|
2023-06-29 13:02:47 -04:00
|
|
|
// OFFSET: LEGO1 0x10015900
|
|
|
|
MxTransitionManager *TransitionManager()
|
|
|
|
{
|
|
|
|
return LegoOmni::GetInstance()->GetTransitionManager();
|
|
|
|
}
|
|
|
|
|
2023-06-30 14:34:39 -04:00
|
|
|
// OFFSET: LEGO1 0x10053430
|
|
|
|
const char *GetNoCD_SourceName()
|
|
|
|
{
|
|
|
|
return g_nocdSourceName;
|
|
|
|
}
|
2023-06-29 13:02:47 -04:00
|
|
|
|
2023-06-19 02:19:40 -04:00
|
|
|
// OFFSET: LEGO1 0x1005b5f0
|
|
|
|
long LegoOmni::Notify(MxParam &p)
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2023-06-30 14:34:39 -04:00
|
|
|
// OFFSET: LEGO1 0x1003dd70 STUB
|
|
|
|
LegoROI *PickROI(long,long)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1003ddc0 STUB
|
|
|
|
LegoEntity *PickEntity(long,long)
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
2023-06-19 02:19:40 -04:00
|
|
|
// OFFSET: LEGO1 0x10058bd0
|
|
|
|
void LegoOmni::Init()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10058e70
|
2023-07-02 02:53:54 -04:00
|
|
|
MxResult LegoOmni::Create(COMPAT_CONST MxOmniCreateParam &p)
|
2023-06-19 02:19:40 -04:00
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
return SUCCESS;
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::Destroy()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable20()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable24(MxDSAction &ds)
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
MxBool LegoOmni::vtable28(MxDSAction &ds)
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
2023-06-27 22:04:07 -04:00
|
|
|
return TRUE;
|
2023-06-19 02:19:40 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable2c()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable30()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable34()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable38()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
void LegoOmni::vtable3c()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
}
|
|
|
|
|
|
|
|
unsigned char LegoOmni::vtable40()
|
|
|
|
{
|
|
|
|
// FIXME: Stub
|
|
|
|
return 0;
|
|
|
|
}
|