From bd245dc6d860882aa49a5af0d7fbfdcd98466f4a Mon Sep 17 00:00:00 2001 From: MishaProductions <106913236+MishaProductions@users.noreply.github.com> Date: Thu, 22 Jun 2023 19:23:54 +0300 Subject: [PATCH] lego1: implement Get* functions (#39) --- LEGO1/legoomni.cpp | 31 +++++++++++++++++++++++++++++++ LEGO1/legoomni.h | 4 ++++ isle.mdp | Bin 48128 -> 51200 bytes 3 files changed, 35 insertions(+) diff --git a/LEGO1/legoomni.cpp b/LEGO1/legoomni.cpp index 062764f7..ff209e38 100644 --- a/LEGO1/legoomni.cpp +++ b/LEGO1/legoomni.cpp @@ -24,12 +24,43 @@ LegoOmni *Lego() return (LegoOmni *) MxOmni::GetInstance(); } +// OFFSET: LEGO1 0x10015710 +LegoSoundManager *SoundManager() +{ + return LegoOmni::GetInstance()->GetSoundManager(); +} + + // OFFSET: LEGO1 0x10015720 LegoVideoManager *VideoManager() { return LegoOmni::GetInstance()->GetVideoManager(); } +// OFFSET: LEGO1 0x10015730 +MxBackgroundAudioManager *BackgroundAudioManager() +{ + return LegoOmni::GetInstance()->GetBackgroundAudioManager(); +} + +// 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(); +} + // OFFSET: LEGO1 0x1005b5f0 long LegoOmni::Notify(MxParam &p) { diff --git a/LEGO1/legoomni.h b/LEGO1/legoomni.h index 10f05665..6234dd7b 100644 --- a/LEGO1/legoomni.h +++ b/LEGO1/legoomni.h @@ -46,7 +46,11 @@ public: virtual unsigned char vtable40(); LegoVideoManager *GetVideoManager() { return (LegoVideoManager *) m_videoManager; } + LegoSoundManager *GetSoundManager() { return (LegoSoundManager *)m_soundManager;} + MxBackgroundAudioManager *GetBackgroundAudioManager() { return m_bkgAudioManager; } LegoInputManager *GetInputManager() { return m_inputMgr; } + LegoGameState *GetGameState() { return m_gameState; } + LegoNavController *GetNavController() { return m_navController; } private: int m_unk68; diff --git a/isle.mdp b/isle.mdp index 0a0a443d90e0d5a067e5d1e0ed2b0de17456ba1b..375126de1fb0e167099a3ea158190f92cebdac37 100644 GIT binary patch literal 51200 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