mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-28 02:31:15 +00:00
more stuff
This commit is contained in:
parent
b6c5977858
commit
98b07c3100
@ -164,6 +164,12 @@ void LegoGameState::SerializeScoreHistory(MxS16 p)
|
|||||||
// TODO
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OFFSET: LEGO1 0x1003cea0
|
||||||
|
void LegoGameState::SetSomeEnumState(undefined4 p_state)
|
||||||
|
{
|
||||||
|
m_unk10 = p_state;
|
||||||
|
}
|
||||||
|
|
||||||
// OFFSET: LEGO1 0x10039f00
|
// OFFSET: LEGO1 0x10039f00
|
||||||
void LegoGameState::SetSavePath(char* p_savePath)
|
void LegoGameState::SetSavePath(char* p_savePath)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -37,6 +37,8 @@ class LegoGameState {
|
|||||||
inline MxU32 GetUnknown10() { return m_unk10; }
|
inline MxU32 GetUnknown10() { return m_unk10; }
|
||||||
inline void SetUnknown424(undefined4 p_unk424) { m_unk424 = p_unk424; }
|
inline void SetUnknown424(undefined4 p_unk424) { m_unk424 = p_unk424; }
|
||||||
|
|
||||||
|
void SetSomeEnumState(undefined4 state);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void RegisterState(LegoState* p_state);
|
void RegisterState(LegoState* p_state);
|
||||||
MxResult WriteEndOfVariables(LegoStream* p_stream);
|
MxResult WriteEndOfVariables(LegoStream* p_stream);
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
#include "legoomni.h"
|
#include "legoomni.h"
|
||||||
|
|
||||||
|
#include "legoanimationmanager.h"
|
||||||
|
#include "legobuildingmanager.h"
|
||||||
#include "legogamestate.h"
|
#include "legogamestate.h"
|
||||||
#include "legoinputmanager.h"
|
#include "legoinputmanager.h"
|
||||||
#include "legoobjectfactory.h"
|
#include "legoobjectfactory.h"
|
||||||
|
#include "legoplantmanager.h"
|
||||||
#include "legosoundmanager.h"
|
#include "legosoundmanager.h"
|
||||||
#include "legoutil.h"
|
#include "legoutil.h"
|
||||||
#include "legovideomanager.h"
|
#include "legovideomanager.h"
|
||||||
@ -13,6 +16,7 @@
|
|||||||
#include "mxomnicreateflags.h"
|
#include "mxomnicreateflags.h"
|
||||||
#include "mxomnicreateparam.h"
|
#include "mxomnicreateparam.h"
|
||||||
#include "mxticklemanager.h"
|
#include "mxticklemanager.h"
|
||||||
|
#include "mxtransitionmanager.h"
|
||||||
|
|
||||||
const char* g_current = "current";
|
const char* g_current = "current";
|
||||||
|
|
||||||
@ -412,6 +416,11 @@ void LegoOmni::Init()
|
|||||||
m_transitionManager = NULL;
|
m_transitionManager = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OFFSET: LEGO1 0x1001a700 STUB
|
||||||
|
void FUN_1001a700()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
// OFFSET: LEGO1 0x10058e70
|
// OFFSET: LEGO1 0x10058e70
|
||||||
MxResult LegoOmni::Create(MxOmniCreateParam& p)
|
MxResult LegoOmni::Create(MxOmniCreateParam& p)
|
||||||
{
|
{
|
||||||
@ -455,12 +464,34 @@ MxResult LegoOmni::Create(MxOmniCreateParam& p)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: there are a few more classes here
|
||||||
|
m_plantManager = new LegoPlantManager();
|
||||||
|
m_animationManager = new LegoAnimationManager();
|
||||||
|
m_buildingManager = new LegoBuildingManager();
|
||||||
m_gameState = new LegoGameState();
|
m_gameState = new LegoGameState();
|
||||||
m_bkgAudioManager = new MxBackgroundAudioManager();
|
// TODO: initialize list at m_unk78
|
||||||
|
|
||||||
SetAppCursor(1);
|
if (m_unk6c && m_gifManager && m_unkLegoSaveDataWriter && m_plantManager && m_animationManager &&
|
||||||
RegisterScripts();
|
m_buildingManager) {
|
||||||
return SUCCESS;
|
// TODO: initialize a bunch of MxVariables
|
||||||
|
RegisterScripts();
|
||||||
|
FUN_1001a700();
|
||||||
|
// todo: another function call. in legoomni maybe?
|
||||||
|
m_bkgAudioManager = new MxBackgroundAudioManager();
|
||||||
|
if (m_bkgAudioManager != NULL) {
|
||||||
|
m_transitionManager = new MxTransitionManager();
|
||||||
|
if (m_transitionManager != NULL) {
|
||||||
|
if (m_transitionManager->GetDDrawSurfaceFromVideoManager() == SUCCESS) {
|
||||||
|
m_notificationManager->Register(this);
|
||||||
|
SetAppCursor(1);
|
||||||
|
m_gameState->SetSomeEnumState(0);
|
||||||
|
return SUCCESS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// OFFSET: LEGO1 0x10058c30 STUB
|
// OFFSET: LEGO1 0x10058c30 STUB
|
||||||
|
|||||||
@ -83,16 +83,16 @@ class LegoOmni : public MxOmni {
|
|||||||
return !strcmp(name, LegoOmni::ClassName()) || MxOmni::IsA(name);
|
return !strcmp(name, LegoOmni::ClassName()) || MxOmni::IsA(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void Init() override; // vtable+14
|
virtual void Init() override; // vtable+14
|
||||||
virtual MxResult Create(MxOmniCreateParam& p) override; // vtable+18
|
virtual MxResult Create(MxOmniCreateParam& p) override; // vtable+18
|
||||||
virtual void Destroy() override; // vtable+1c
|
virtual void Destroy() override; // vtable+1c
|
||||||
virtual MxResult Start(MxDSAction* action) override; // vtable+20
|
virtual MxResult Start(MxDSAction* action) override; // vtable+20
|
||||||
virtual MxResult DeleteObject(MxDSAction& ds) override; // vtable+24
|
virtual MxResult DeleteObject(MxDSAction& ds) override; // vtable+24
|
||||||
virtual MxBool DoesEntityExist(MxDSAction& ds) override; // vtable+28
|
virtual MxBool DoesEntityExist(MxDSAction& ds) override; // vtable+28
|
||||||
virtual LegoWorld* Vtable0x30(const char* p_id, int p_entityId, MxCore* p_presenter) override; // vtable+30
|
virtual LegoWorld* Vtable0x30(const char* p_id, int p_entityId, MxCore* p_presenter) override; // vtable+30
|
||||||
virtual void NotifyCurrentEntity(MxNotificationParam* p_param) override; // vtable+34
|
virtual void NotifyCurrentEntity(MxNotificationParam* p_param) override; // vtable+34
|
||||||
virtual void StartTimer() override; // vtable+38
|
virtual void StartTimer() override; // vtable+38
|
||||||
virtual void StopTimer() override; // vtable+3c
|
virtual void StopTimer() override; // vtable+3c
|
||||||
|
|
||||||
LegoEntity* FindByEntityIdOrAtomId(MxAtomId& p_atom, int p_entityid);
|
LegoEntity* FindByEntityIdOrAtomId(MxAtomId& p_atom, int p_entityid);
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user