Implement/match Act3::Notify (#1200)

* Implement/match Act3::Notify

* Fix typo
This commit is contained in:
Christian Semmler
2024-12-08 12:52:32 -07:00
committed by GitHub
parent 14d943f2ce
commit d9b9178d27
5 changed files with 154 additions and 9 deletions

View File

@@ -24,13 +24,14 @@ struct Act3ListElement {
};
// SIZE 0x10
class Act3List {
class Act3List : private list<Act3ListElement> {
public:
Act3List() { m_unk0x04 = 0; }
void FUN_100720d0(MxU32 p_objectId);
private:
list<Act3ListElement> m_unk0x00; // 0x00
undefined4 m_unk0x04; // 0x0c
undefined4 m_unk0x04; // 0x0c
};
// VTABLE: LEGO1 0x100d4fc8
@@ -108,6 +109,8 @@ public:
void FUN_10073430();
protected:
MxLong HandleTransitionEnd();
Act3State* m_state; // 0xf8
Act3Ammo m_pizzas[MAX_PIZZAS]; // 0xfc
Act3Ammo m_donuts[MAX_DONUTS]; // 0x217c
@@ -118,12 +121,15 @@ protected:
Helicopter* m_copter; // 0x420c
Act3Shark* m_shark; // 0x4210
MxFloat m_time; // 0x4214
undefined4 m_unk0x4218; // 0x4218
undefined m_unk0x4218; // 0x4218
undefined m_unk0x4219; // 0x4219
undefined m_unk0x421a; // 0x421a
undefined m_unk0x421b; // 0x421b
undefined m_unk0x421c; // 0x421c
undefined m_unk0x421d; // 0x421d
undefined m_unk0x421e; // 0x421e
Act3List m_unk0x4220; // 0x4220
undefined4 m_unk0x4230[15]; // 0x4230
MxPresenter* m_helicopterDots[15]; // 0x4230
Act3Script::Script m_unk0x426c; // 0x426c
LegoGameState::Area m_destLocation; // 0x4270
};

View File

@@ -29,6 +29,8 @@ public:
void SetUnknown0x24(MxFloat p_unk0x24) { m_unk0x24 = p_unk0x24; }
void SetUnknown0x50(MxFloat p_unk0x50) { m_unk0x50 = p_unk0x50; }
MxResult FUN_100417c0();
// SYNTHETIC: LEGO1 0x10043250
// Act3Brickster::`scalar deleting destructor'

View File

@@ -5,6 +5,8 @@
#include "legostate.h"
#include "realtime/matrix.h"
class Act3;
// VTABLE: LEGO1 0x100d5418
// SIZE 0x0c
class HelicopterState : public LegoState {
@@ -78,6 +80,9 @@ public:
// SYNTHETIC: LEGO1 0x10003210
// Helicopter::`scalar deleting destructor'
// m_state is accessed directly from Act3; confirmed by BETA10
friend class Act3;
protected:
MxMatrix m_unk0x160; // 0x160
MxMatrix m_unk0x1a8; // 0x1a8