diff --git a/LEGO1/lego/legoomni/include/act3shark.h b/LEGO1/lego/legoomni/include/act3shark.h index 4f0e471d..180bab99 100644 --- a/LEGO1/lego/legoomni/include/act3shark.h +++ b/LEGO1/lego/legoomni/include/act3shark.h @@ -35,6 +35,7 @@ class Act3Shark : public LegoAnimActor { // SYNTHETIC: LEGO1 0x10043020 // Act3Shark::`scalar deleting destructor' +private: list m_unk0x1c; // 0x1c undefined4 m_unk0x28; // 0x28 undefined4 m_unk0x2c; // 0x2c diff --git a/LEGO1/lego/legoomni/include/doors.h b/LEGO1/lego/legoomni/include/doors.h index 17a9ea4e..5a4a808a 100644 --- a/LEGO1/lego/legoomni/include/doors.h +++ b/LEGO1/lego/legoomni/include/doors.h @@ -33,7 +33,7 @@ class Doors : public LegoPathActor { undefined4 m_unk0x15c; // 0x15c undefined4 m_unk0x160; // 0x160 MxMatrix m_unk0x164; // 0x164 - MxMatrix m_unk0x1ac; // 0x1fc + MxMatrix m_unk0x1ac; // 0x1ac undefined4 m_unk0x1f4; // 0x1f4 }; diff --git a/LEGO1/lego/legoomni/include/legoact2.h b/LEGO1/lego/legoomni/include/legoact2.h index c464af0b..d90fe268 100644 --- a/LEGO1/lego/legoomni/include/legoact2.h +++ b/LEGO1/lego/legoomni/include/legoact2.h @@ -9,7 +9,7 @@ // VTABLE: LEGO1 0x100d82e0 // SIZE 0x1154 class LegoAct2 : public LegoWorld { - +public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 MxResult Tickle() override; // vtable+0x08 MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18 @@ -21,7 +21,9 @@ class LegoAct2 : public LegoWorld { // SYNTHETIC: LEGO1 0x1004fe20 // LegoAct2::`scalar deleting destructor' - Act2Brick m_bricks[10]; // 0xf8 + +private: + Act2Brick m_bricks[10]; // 0x00f8 undefined m_unk0x10c0; // 0x10c0 undefined m_unk0x10c1; // 0x10c1 undefined m_unk0x10c2; // 0x10c2 diff --git a/LEGO1/lego/legoomni/include/legocarraceactor.h b/LEGO1/lego/legoomni/include/legocarraceactor.h index 827f11a0..3d78db17 100644 --- a/LEGO1/lego/legoomni/include/legocarraceactor.h +++ b/LEGO1/lego/legoomni/include/legocarraceactor.h @@ -13,6 +13,7 @@ class LegoCarRaceActor : public virtual LegoRaceActor { public: LegoCarRaceActor(); + // FUNCTION: LEGO1 0x10081650 inline const char* ClassName() const override // vtable+0x0c { @@ -35,18 +36,25 @@ class LegoCarRaceActor : public virtual LegoRaceActor { void VTable0x9c() override; // vtable+0x9c virtual void FUN_10080590(); + // FUNCTION: LEGO1 0x10012bb0 virtual void FUN_10012bb0(float p_unk0x14) { m_unk0x14 = p_unk0x14; } + // FUNCTION: LEGO1 0x10012bc0 virtual float FUN_10012bc0() { return m_unk0x14; } + // FUNCTION: LEGO1 0x10012bd0 virtual void FUN_10012bd0(float p_unk0x10) { m_unk0x10 = p_unk0x10; } + // FUNCTION: LEGO1 0x10012be0 virtual float FUN_10012be0() { return m_unk0x10; } + // FUNCTION: LEGO1 0x10012bf0 virtual void FUN_10012bf0(float p_unk0x18) { m_unk0x18 = p_unk0x18; } + // FUNCTION: LEGO1 0x10012c00 virtual float FUN_10012c00() { return m_unk0x18; } + virtual void VTable0x1c(); // vtable+0x1c // SYNTHETIC: LEGO1 0x10081610 diff --git a/LEGO1/lego/legoomni/include/legogamestate.h b/LEGO1/lego/legoomni/include/legogamestate.h index f3b976a1..54539326 100644 --- a/LEGO1/lego/legoomni/include/legogamestate.h +++ b/LEGO1/lego/legoomni/include/legogamestate.h @@ -15,8 +15,8 @@ class MxString; // SIZE 0x08 struct ColorStringStruct { - const char* m_targetName; - const char* m_colorName; + const char* m_targetName; // 0x00 + const char* m_colorName; // 0x04 }; // SIZE 0x430 diff --git a/LEGO1/lego/legoomni/include/legojetski.h b/LEGO1/lego/legoomni/include/legojetski.h index 1d121412..c2e6d813 100644 --- a/LEGO1/lego/legoomni/include/legojetski.h +++ b/LEGO1/lego/legoomni/include/legojetski.h @@ -15,6 +15,7 @@ class LegoJetski : public LegoJetskiRaceActor, public LegoRaceMap { public: LegoJetski(); + MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10013e80 diff --git a/LEGO1/lego/legoomni/include/legojetskiraceactor.h b/LEGO1/lego/legoomni/include/legojetskiraceactor.h index 264fe569..d24566f5 100644 --- a/LEGO1/lego/legoomni/include/legojetskiraceactor.h +++ b/LEGO1/lego/legoomni/include/legojetskiraceactor.h @@ -13,6 +13,7 @@ class LegoJetskiRaceActor : public virtual LegoCarRaceActor { public: LegoJetskiRaceActor(); + // FUNCTION: LEGO1 0x10081d80 inline const char* ClassName() const override // vtable+0x0c { diff --git a/LEGO1/lego/legoomni/include/legoraceactor.h b/LEGO1/lego/legoomni/include/legoraceactor.h index 153e8b19..d43a6799 100644 --- a/LEGO1/lego/legoomni/include/legoraceactor.h +++ b/LEGO1/lego/legoomni/include/legoraceactor.h @@ -13,6 +13,7 @@ class LegoRaceActor : public virtual LegoAnimActor { public: LegoRaceActor(); + // FUNCTION: LEGO1 0x10014af0 inline const char* ClassName() const override // vtable+0x0c { diff --git a/LEGO1/lego/legoomni/include/legoracecar.h b/LEGO1/lego/legoomni/include/legoracecar.h index 86676093..331f11f7 100644 --- a/LEGO1/lego/legoomni/include/legoracecar.h +++ b/LEGO1/lego/legoomni/include/legoracecar.h @@ -1,5 +1,5 @@ -#ifndef LEGOCARRACE_H -#define LEGOCARRACE_H +#ifndef LEGORACECAR_H +#define LEGORACECAR_H #include "legocarraceactor.h" #include "legopathactor.h" @@ -56,4 +56,4 @@ class LegoRaceCar : public LegoCarRaceActor, public LegoRaceMap { undefined4 m_unk0x7c; // 0x7c }; -#endif // LEGOCARRACE_H +#endif // LEGORACECAR_H diff --git a/LEGO1/lego/legoomni/include/legoracemap.h b/LEGO1/lego/legoomni/include/legoracemap.h index 3fd23d3e..7bfce972 100644 --- a/LEGO1/lego/legoomni/include/legoracemap.h +++ b/LEGO1/lego/legoomni/include/legoracemap.h @@ -13,6 +13,7 @@ class LegoRaceMap : public virtual LegoRaceActor { public: LegoRaceMap(); + virtual void FUN_1005d4b0(); // SYNTHETIC: LEGO1 0x1005d5c0 diff --git a/LEGO1/lego/legoomni/include/raceskel.h b/LEGO1/lego/legoomni/include/raceskel.h index c537173d..6d9a270b 100644 --- a/LEGO1/lego/legoomni/include/raceskel.h +++ b/LEGO1/lego/legoomni/include/raceskel.h @@ -4,8 +4,8 @@ #include "legoanimactor.h" /* - VTABLE : LEGO1 0x100d7668 LegoPathActor - VTABLE : LEGO1 0x100d7738 LegoAnimActor + VTABLE: LEGO1 0x100d7668 LegoPathActor + VTABLE: LEGO1 0x100d7738 LegoAnimActor */ // SIZE 0x178 class RaceSkel : public LegoAnimActor { diff --git a/LEGO1/lego/legoomni/src/common/legogamestate.cpp b/LEGO1/lego/legoomni/src/common/legogamestate.cpp index f223bdb5..221e4081 100644 --- a/LEGO1/lego/legoomni/src/common/legogamestate.cpp +++ b/LEGO1/lego/legoomni/src/common/legogamestate.cpp @@ -34,6 +34,7 @@ DECOMP_SIZE_ASSERT(LegoGameState::Username, 0x0e) DECOMP_SIZE_ASSERT(LegoGameState::ScoreItem, 0x2c) DECOMP_SIZE_ASSERT(LegoGameState::History, 0x374) DECOMP_SIZE_ASSERT(LegoGameState, 0x430) +DECOMP_SIZE_ASSERT(ColorStringStruct, 0x08) // GLOBAL: LEGO1 0x100f3e40 // STRING: LEGO1 0x100f3e3c diff --git a/LEGO1/lego/legoomni/src/entity/legojetski.cpp b/LEGO1/lego/legoomni/src/entity/legojetski.cpp index d2c99a8f..623a24e7 100644 --- a/LEGO1/lego/legoomni/src/entity/legojetski.cpp +++ b/LEGO1/lego/legoomni/src/entity/legojetski.cpp @@ -3,8 +3,8 @@ #include "mxmisc.h" #include "mxnotificationmanager.h" -DECOMP_SIZE_ASSERT(LegoJetski, 0x1dc) // Currently wrong due to a missing compiler added top pointer (See also missing code block in constructor) +DECOMP_SIZE_ASSERT(LegoJetski, 0x1dc) // FUNCTION: LEGO1 0x100136f0 void LegoJetski::FUN_100136f0(float p_worldSpeed)