mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-28 10:41:15 +00:00
Add mxrender manager class stub
This commit is contained in:
parent
afadca953b
commit
aa23332ff7
@ -161,6 +161,7 @@ add_library(lego1 SHARED
|
|||||||
LEGO1/mxramstreamcontroller.cpp
|
LEGO1/mxramstreamcontroller.cpp
|
||||||
LEGO1/mxramstreamprovider.cpp
|
LEGO1/mxramstreamprovider.cpp
|
||||||
LEGO1/mxregion.cpp
|
LEGO1/mxregion.cpp
|
||||||
|
LEGO1/mxrendermanager.cpp
|
||||||
LEGO1/mxscheduler.cpp
|
LEGO1/mxscheduler.cpp
|
||||||
LEGO1/mxsemaphore.cpp
|
LEGO1/mxsemaphore.cpp
|
||||||
LEGO1/mxsmack.cpp
|
LEGO1/mxsmack.cpp
|
||||||
|
|||||||
@ -19,6 +19,7 @@
|
|||||||
#include "mxdsfile.h"
|
#include "mxdsfile.h"
|
||||||
#include "mxomnicreateflags.h"
|
#include "mxomnicreateflags.h"
|
||||||
#include "mxomnicreateparam.h"
|
#include "mxomnicreateparam.h"
|
||||||
|
#include "mxrendermanager.h"
|
||||||
#include "mxticklemanager.h"
|
#include "mxticklemanager.h"
|
||||||
#include "mxtransitionmanager.h"
|
#include "mxtransitionmanager.h"
|
||||||
|
|
||||||
@ -385,7 +386,7 @@ void LegoOmni::Init()
|
|||||||
MxOmni::Init();
|
MxOmni::Init();
|
||||||
m_unk0x68 = 0;
|
m_unk0x68 = 0;
|
||||||
m_inputMgr = NULL;
|
m_inputMgr = NULL;
|
||||||
m_unk0x6c = 0;
|
m_renderMgr = 0;
|
||||||
m_gifManager = NULL;
|
m_gifManager = NULL;
|
||||||
m_worldList = NULL;
|
m_worldList = NULL;
|
||||||
m_currentWorld = NULL;
|
m_currentWorld = NULL;
|
||||||
@ -443,9 +444,9 @@ void LegoOmni::Destroy()
|
|||||||
m_gifManager = NULL;
|
m_gifManager = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_unk0x6c) {
|
if (m_renderMgr) {
|
||||||
// delete m_unk0x6c; // TODO
|
delete m_renderMgr;
|
||||||
m_unk0x6c = NULL;
|
m_renderMgr = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_inputMgr) {
|
if (m_inputMgr) {
|
||||||
@ -503,6 +504,7 @@ MxResult LegoOmni::Create(MxOmniCreateParam& p_param)
|
|||||||
|
|
||||||
if (m_soundManager = new LegoSoundManager()) {
|
if (m_soundManager = new LegoSoundManager()) {
|
||||||
if (m_soundManager->Create(10, 0) != SUCCESS) {
|
if (m_soundManager->Create(10, 0) != SUCCESS) {
|
||||||
|
OutputDebugStringA("lego sound fail\n");
|
||||||
delete m_soundManager;
|
delete m_soundManager;
|
||||||
m_soundManager = NULL;
|
m_soundManager = NULL;
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
@ -511,6 +513,7 @@ MxResult LegoOmni::Create(MxOmniCreateParam& p_param)
|
|||||||
|
|
||||||
if (m_videoManager = new LegoVideoManager()) {
|
if (m_videoManager = new LegoVideoManager()) {
|
||||||
if (m_videoManager->Create(p_param.GetVideoParam(), 100, 0) != SUCCESS) {
|
if (m_videoManager->Create(p_param.GetVideoParam(), 100, 0) != SUCCESS) {
|
||||||
|
OutputDebugStringA("lego vid failure\n");
|
||||||
delete m_videoManager;
|
delete m_videoManager;
|
||||||
m_videoManager = NULL;
|
m_videoManager = NULL;
|
||||||
}
|
}
|
||||||
@ -523,15 +526,16 @@ MxResult LegoOmni::Create(MxOmniCreateParam& p_param)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: there are a few more classes here
|
m_renderMgr = new MxRenderManager();
|
||||||
m_gifManager = new GifManager();
|
m_gifManager = new GifManager();
|
||||||
|
// TODO: there is another class here
|
||||||
m_plantManager = new LegoPlantManager();
|
m_plantManager = new LegoPlantManager();
|
||||||
m_animationManager = new LegoAnimationManager();
|
m_animationManager = new LegoAnimationManager();
|
||||||
m_buildingManager = new LegoBuildingManager();
|
m_buildingManager = new LegoBuildingManager();
|
||||||
m_gameState = new LegoGameState();
|
m_gameState = new LegoGameState();
|
||||||
m_worldList = new LegoWorldList(TRUE);
|
m_worldList = new LegoWorldList(TRUE);
|
||||||
|
|
||||||
if (m_unk0x6c && m_gifManager && m_worldList && m_plantManager && m_animationManager && m_buildingManager) {
|
if (m_renderMgr && m_gifManager && m_worldList && m_plantManager && m_animationManager && m_buildingManager) {
|
||||||
// TODO: initialize a bunch of MxVariables
|
// TODO: initialize a bunch of MxVariables
|
||||||
RegisterScripts();
|
RegisterScripts();
|
||||||
FUN_1001a700();
|
FUN_1001a700();
|
||||||
|
|||||||
@ -27,6 +27,7 @@ class MxAtomId;
|
|||||||
class MxBackgroundAudioManager;
|
class MxBackgroundAudioManager;
|
||||||
class MxDSFile;
|
class MxDSFile;
|
||||||
class MxTransitionManager;
|
class MxTransitionManager;
|
||||||
|
class MxRenderManager;
|
||||||
|
|
||||||
extern MxAtomId* g_copterScript;
|
extern MxAtomId* g_copterScript;
|
||||||
extern MxAtomId* g_dunecarScript;
|
extern MxAtomId* g_dunecarScript;
|
||||||
@ -116,7 +117,7 @@ class LegoOmni : public MxOmni {
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
undefined4* m_unk0x68; // 0x68
|
undefined4* m_unk0x68; // 0x68
|
||||||
undefined4 m_unk0x6c; // 0x6c
|
MxRenderManager* m_renderMgr; // 0x6c
|
||||||
LegoInputManager* m_inputMgr; // 0x70
|
LegoInputManager* m_inputMgr; // 0x70
|
||||||
GifManager* m_gifManager; // 0x74
|
GifManager* m_gifManager; // 0x74
|
||||||
LegoWorldList* m_worldList; // 0x78
|
LegoWorldList* m_worldList; // 0x78
|
||||||
|
|||||||
11
LEGO1/mxrendermanager.cpp
Normal file
11
LEGO1/mxrendermanager.cpp
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#include "mxrendermanager.h"
|
||||||
|
|
||||||
|
#include "decomp.h"
|
||||||
|
|
||||||
|
DECOMP_SIZE_ASSERT(MxRenderManager, 0x14)
|
||||||
|
|
||||||
|
// STUB: LEGO1 0x100a6fd0
|
||||||
|
MxRenderManager::MxRenderManager()
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
15
LEGO1/mxrendermanager.h
Normal file
15
LEGO1/mxrendermanager.h
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#ifndef MXRENDERMANAGER_H
|
||||||
|
#define MXRENDERMANAGER_H
|
||||||
|
|
||||||
|
#include "mxtypes.h"
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100dbdbc
|
||||||
|
// SIZE 0x14
|
||||||
|
class MxRenderManager {
|
||||||
|
public:
|
||||||
|
MxRenderManager();
|
||||||
|
private:
|
||||||
|
char m_unk0x4[0x14]; // TODO: change to 0x10 once scalar deconstructor is added
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // MXRENDERMANAGER_H
|
||||||
Loading…
Reference in New Issue
Block a user