Implement/match Act1State::Act1State (#1130)

* Implement/match Act1State::Act1State

* Remove obsolete enum
This commit is contained in:
Christian Semmler 2024-11-03 09:41:15 -07:00 committed by GitHub
parent 519d8c570a
commit e4453c4100
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 12 additions and 28 deletions

View file

@ -32,12 +32,6 @@ class Act1State : public LegoState {
c_floor3 c_floor3
}; };
enum {
e_unk953 = 953,
e_unk954 = 954,
e_unk955 = 955,
};
// SIZE 0x4c // SIZE 0x4c
class NamedPlane { class NamedPlane {
public: public:
@ -109,11 +103,7 @@ class Act1State : public LegoState {
// TODO: Most likely getters/setters are not used according to BETA. // TODO: Most likely getters/setters are not used according to BETA.
MxS32* m_unk0x008; // 0x008 FIXME: count for m_unk0x008 Playlist m_unk0x008; // 0x008
MxS16 m_unk0x00c; // 0x00c
undefined2 m_unk0x00e; // 0x00e
undefined2 m_unk0x010; // 0x010
undefined m_unk0x012; // 0x012
MxS32 m_unk0x014; // 0x014 MxS32 m_unk0x014; // 0x014
MxU32 m_unk0x018; // 0x018 MxU32 m_unk0x018; // 0x018
MxS16 m_elevFloor; // 0x01c MxS16 m_elevFloor; // 0x01c

View file

@ -73,7 +73,6 @@ class LegoState : public MxCore {
return SUCCESS; return SUCCESS;
} }
private:
MxU32* m_objectIds; // 0x00 MxU32* m_objectIds; // 0x00
MxS16 m_length; // 0x04 MxS16 m_length; // 0x04
MxS16 m_mode; // 0x06 MxS16 m_mode; // 0x06

View file

@ -46,11 +46,8 @@ DECOMP_SIZE_ASSERT(Isle, 0x140)
MxU32 g_isleFlags = 0x7f; MxU32 g_isleFlags = 0x7f;
// GLOBAL: LEGO1 0x100f37f0 // GLOBAL: LEGO1 0x100f37f0
MxS32 g_unk0x100f37f0[] = { IsleScript::Script g_unk0x100f37f0[] =
Act1State::e_unk953, {IsleScript::c_Avo905Ps_PlayWav, IsleScript::c_Avo906Ps_PlayWav, IsleScript::c_Avo907Ps_PlayWav};
Act1State::e_unk954,
Act1State::e_unk955,
};
// FUNCTION: LEGO1 0x10030820 // FUNCTION: LEGO1 0x10030820
Isle::Isle() Isle::Isle()
@ -1283,16 +1280,16 @@ void Isle::FUN_10033350()
m_destLocation = LegoGameState::e_infomain; m_destLocation = LegoGameState::e_infomain;
} }
// STUB: LEGO1 0x100334b0 // FUNCTION: LEGO1 0x100334b0
Act1State::Act1State() : m_unk0x00c(0), m_unk0x00e(0), m_unk0x008(NULL), m_unk0x010(0) // FUNCTION: BETA10 0x10035197
Act1State::Act1State()
{ {
m_unk0x01e = FALSE; m_elevFloor = Act1State::c_floor1;
m_unk0x018 = 1; m_unk0x018 = 1;
m_unk0x010 = 0; m_unk0x01e = FALSE;
m_planeActive = FALSE; m_unk0x008 = Playlist((MxU32*) g_unk0x100f37f0, sizeOfArray(g_unk0x100f37f0), Playlist::e_loop);
m_unk0x00e = 0;
m_unk0x01f = FALSE; m_unk0x01f = FALSE;
m_unk0x008 = g_unk0x100f37f0; m_planeActive = FALSE;
m_unk0x014 = -1; m_unk0x014 = -1;
m_unk0x022 = FALSE; m_unk0x022 = FALSE;
m_unk0x154 = NULL; m_unk0x154 = NULL;
@ -1301,8 +1298,6 @@ Act1State::Act1State() : m_unk0x00c(0), m_unk0x00e(0), m_unk0x008(NULL), m_unk0x
m_helicopter = NULL; m_helicopter = NULL;
m_unk0x1b0 = NULL; m_unk0x1b0 = NULL;
m_unk0x021 = 1; m_unk0x021 = 1;
m_elevFloor = Act1State::c_floor1;
m_unk0x00c = sizeOfArray(g_unk0x100f37f0);
m_unk0x1b4 = NULL; m_unk0x1b4 = NULL;
m_jetski = NULL; m_jetski = NULL;
m_unk0x208 = NULL; m_unk0x208 = NULL;
@ -1391,7 +1386,7 @@ MxResult Act1State::Serialize(LegoFile* p_file)
} }
} }
Write(p_file, m_unk0x010); Write(p_file, m_unk0x008.m_nextIndex);
Write(p_file, m_unk0x022); Write(p_file, m_unk0x022);
} }
else if (p_file->IsReadMode()) { else if (p_file->IsReadMode()) {
@ -1445,7 +1440,7 @@ MxResult Act1State::Serialize(LegoFile* p_file)
} }
} }
Read(p_file, &m_unk0x010); Read(p_file, &m_unk0x008.m_nextIndex);
Read(p_file, &m_unk0x022); Read(p_file, &m_unk0x022);
} }