Implement/match Isle::CreateState and related (#948)

This commit is contained in:
Christian Semmler
2024-05-24 14:07:36 -04:00
committed by GitHub
parent 1633118f68
commit 63719ef689
14 changed files with 123 additions and 61 deletions

View File

@@ -36,6 +36,7 @@ public:
MxU32 VTable0xdc(MxType19NotificationParam&) override; // vtable+0xdc
void VTable0xe4() override; // vtable+0xe4
void CreateState();
void FUN_10036e60();
void FUN_10037060();

View File

@@ -37,6 +37,8 @@ public:
// SYNTHETIC: LEGO1 0x10003210
// Helicopter::`scalar deleting destructor'
void CreateState();
protected:
MxMatrix m_unk0x160; // 0x160
MxMatrix m_unk0x1a8; // 0x1a8
@@ -44,9 +46,6 @@ protected:
UnknownMx4DPointFloat m_unk0x1f4; // 0x1f4
HelicopterState* m_state; // 0x228
MxAtomId m_script; // 0x22c
private:
void GetState();
};
#endif // HELICOPTER_H

View File

@@ -76,7 +76,7 @@ protected:
void HandleElevatorEndAction();
void UpdateGlobe();
void FUN_10032620();
void FUN_100330e0();
void CreateState();
void FUN_10032d30(
IsleScript::Script p_script,
JukeboxScript::Script p_music,

View File

@@ -4,6 +4,8 @@
#include "decomp.h"
#include "isleactor.h"
class Act1State;
class PizzaMissionState;
class SkateBoard;
// VTABLE: LEGO1 0x100d7380
@@ -33,6 +35,7 @@ public:
undefined4 HandleEndAction(MxEndActionNotificationParam&) override; // vtable+0x74
undefined4 VTable0x80(MxParam&) override; // vtable+0x80
void CreateState();
void FUN_100382b0();
void FUN_10038380();
@@ -42,14 +45,14 @@ public:
// Pizza::`scalar deleting destructor'
private:
undefined4 m_unk0x7c; // 0x7c
undefined4 m_unk0x80; // 0x80
SkateBoard* m_skateboard; // 0x84
undefined4 m_unk0x88; // 0x88
undefined4 m_unk0x8c; // 0x8c
undefined4 m_unk0x90; // 0x90
undefined4 m_unk0x94; // 0x94
undefined m_unk0x98; // 0x98
PizzaMissionState* m_state; // 0x7c
undefined4 m_unk0x80; // 0x80
SkateBoard* m_skateboard; // 0x84
Act1State* m_act1state; // 0x88
undefined4 m_unk0x8c; // 0x8c
undefined4 m_unk0x90; // 0x90
undefined4 m_unk0x94; // 0x94
undefined m_unk0x98; // 0x98
};
#endif // PIZZA_H

View File

@@ -29,12 +29,12 @@ public:
MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
undefined4 VTable0x68() override; // vtable+0x68
void CreateState();
// SYNTHETIC: LEGO1 0x1000e8d0
// Pizzeria::`scalar deleting destructor'
private:
void Init();
PizzeriaState* m_pizzeriaState; // 0x7c
PizzaMissionState* m_pizzaMissionState; // 0x80
};

View File

@@ -30,6 +30,7 @@ public:
}
void Initialize(MxBool p_und);
void CreateState();
void Play();
void Stop();
@@ -39,8 +40,6 @@ public:
// Radio::`scalar deleting destructor'
private:
void CreateRadioState();
RadioState* m_state; // 0x08
MxBool m_unk0x0c; // 0x0c
MxBool m_audioEnabled; // 0x0d

View File

@@ -4,6 +4,8 @@
#include "decomp.h"
#include "islepathactor.h"
class TowTrackMissionState;
// VTABLE: LEGO1 0x100d7ee0
// SIZE 0x180
class TowTrack : public IslePathActor {
@@ -32,6 +34,7 @@ public:
MxU32 VTable0xdc(MxType19NotificationParam& p_param) override; // vtable+0xdc
void VTable0xe4() override; // vtable+0xe4
void CreateState();
void FUN_1004dab0();
void FUN_1004dad0();
@@ -39,17 +42,16 @@ public:
// TowTrack::`scalar deleting destructor'
private:
// TODO: TowTrack field types
undefined m_unk0x154[4];
MxS32 m_unk0x164;
MxS16 m_unk0x168;
MxS16 m_unk0x16a;
MxS16 m_unk0x16c;
MxS16 m_unk0x16e;
MxS32 m_unk0x170;
MxS32 m_unk0x174;
MxFloat m_unk0x178;
undefined4 m_unk0x17c;
undefined4 m_unk0x160; // 0x160
TowTrackMissionState* m_state; // 0x164
MxS16 m_unk0x168; // 0x168
MxS16 m_unk0x16a; // 0x16a
MxS16 m_unk0x16c; // 0x16c
MxS16 m_unk0x16e; // 0x16e
MxS32 m_unk0x170; // 0x170
MxS32 m_unk0x174; // 0x174
MxFloat m_unk0x178; // 0x178
undefined4 m_unk0x17c; // 0x17c
};
#endif // TOWTRACK_H