2023-06-30 14:34:39 -04:00
|
|
|
#include "legogamestate.h"
|
2023-10-07 11:30:04 -04:00
|
|
|
|
2023-07-03 13:25:37 -04:00
|
|
|
#include "legoomni.h"
|
2023-10-07 11:30:04 -04:00
|
|
|
#include "mxvariabletable.h"
|
2023-09-29 16:38:08 -04:00
|
|
|
#include "decomp.h"
|
|
|
|
|
|
|
|
// Based on the highest dword offset (0x42c) referenced in the constructor.
|
|
|
|
// There may be other members that come after.
|
|
|
|
DECOMP_SIZE_ASSERT(LegoGameState, 0x430)
|
2023-06-30 14:34:39 -04:00
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10039550
|
|
|
|
LegoGameState::LegoGameState()
|
|
|
|
{
|
|
|
|
// TODO
|
2023-09-29 16:38:08 -04:00
|
|
|
m_backgroundColor = new LegoBackgroundColor("backgroundcolor", "set 56 54 68");
|
|
|
|
VariableTable()->SetVariable(m_backgroundColor);
|
|
|
|
|
|
|
|
m_tempBackgroundColor = new LegoBackgroundColor("tempBackgroundcolor", "set 56 54 68");
|
|
|
|
VariableTable()->SetVariable(m_tempBackgroundColor);
|
|
|
|
|
|
|
|
m_fullScreenMovie = new LegoFullScreenMovie("fsmovie", "disable");
|
|
|
|
VariableTable()->SetVariable(m_fullScreenMovie);
|
|
|
|
|
|
|
|
VariableTable()->SetVariable("lightposition", "2");
|
|
|
|
SerializeScoreHistory(1);
|
2023-06-30 14:34:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10039720
|
|
|
|
LegoGameState::~LegoGameState()
|
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10039c60
|
2023-07-02 04:05:49 -04:00
|
|
|
MxResult LegoGameState::Load(MxULong)
|
2023-06-30 14:34:39 -04:00
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10039980
|
2023-07-02 04:05:49 -04:00
|
|
|
MxResult LegoGameState::Save(MxULong p)
|
2023-06-30 14:34:39 -04:00
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1003a2e0
|
2023-07-02 05:07:11 -04:00
|
|
|
void LegoGameState::SerializePlayersInfo(MxS16 p)
|
2023-06-30 14:34:39 -04:00
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x1003cdd0
|
2023-07-02 05:07:11 -04:00
|
|
|
void LegoGameState::SerializeScoreHistory(MxS16 p)
|
2023-06-30 14:34:39 -04:00
|
|
|
{
|
|
|
|
// TODO
|
|
|
|
}
|
|
|
|
|
|
|
|
// OFFSET: LEGO1 0x10039f00
|
2023-07-03 13:25:37 -04:00
|
|
|
void LegoGameState::SetSavePath(char *p_savePath)
|
2023-06-30 14:34:39 -04:00
|
|
|
{
|
2023-07-03 13:25:37 -04:00
|
|
|
if (m_savePath != NULL)
|
|
|
|
{
|
|
|
|
delete[] m_savePath;
|
|
|
|
}
|
|
|
|
if (p_savePath)
|
|
|
|
{
|
|
|
|
m_savePath = new char[strlen(p_savePath) + 1];
|
|
|
|
strcpy(m_savePath, p_savePath);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
m_savePath = NULL;
|
|
|
|
}
|
2023-06-30 14:34:39 -04:00
|
|
|
}
|