diff --git a/LEGO1/lego/legoomni/include/act2brick.h b/LEGO1/lego/legoomni/include/act2brick.h index addc7261..55efc967 100644 --- a/LEGO1/lego/legoomni/include/act2brick.h +++ b/LEGO1/lego/legoomni/include/act2brick.h @@ -4,6 +4,7 @@ #include "legopathactor.h" // VTABLE: LEGO1 0x100d9b60 +// VTABLE: BETA10 0x101b85b8 // SIZE 0x194 class Act2Brick : public LegoPathActor { public: @@ -14,6 +15,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1007a360 + // FUNCTION: BETA10 0x10013290 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0438 diff --git a/LEGO1/lego/legoomni/include/act2policestation.h b/LEGO1/lego/legoomni/include/act2policestation.h index d370c51b..8a2068ed 100644 --- a/LEGO1/lego/legoomni/include/act2policestation.h +++ b/LEGO1/lego/legoomni/include/act2policestation.h @@ -4,12 +4,14 @@ #include "legoentity.h" // VTABLE: LEGO1 0x100d53a8 +// VTABLE: BETA10 0x101bd570 // SIZE 0x68 class Act2PoliceStation : public LegoEntity { public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x1000e200 + // FUNCTION: BETA10 0x100a8e00 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03fc diff --git a/LEGO1/lego/legoomni/include/act3.h b/LEGO1/lego/legoomni/include/act3.h index 44c220db..57012215 100644 --- a/LEGO1/lego/legoomni/include/act3.h +++ b/LEGO1/lego/legoomni/include/act3.h @@ -47,12 +47,14 @@ private: }; // VTABLE: LEGO1 0x100d4fc8 +// VTABLE: BETA10 0x101b89b8 // SIZE 0x0c class Act3State : public LegoState { public: Act3State() { m_unk0x08 = 0; } // FUNCTION: LEGO1 0x1000e300 + // FUNCTION: BETA10 0x10017e10 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03f0 @@ -79,6 +81,7 @@ public: }; // VTABLE: LEGO1 0x100d9628 +// VTABLE: BETA10 0x101b8940 // SIZE 0x4274 class Act3 : public LegoWorld { public: @@ -89,6 +92,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10072510 + // FUNCTION: BETA10 0x10017550 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f013c diff --git a/LEGO1/lego/legoomni/include/act3actors.h b/LEGO1/lego/legoomni/include/act3actors.h index e1a44ea3..2a9ceaa5 100644 --- a/LEGO1/lego/legoomni/include/act3actors.h +++ b/LEGO1/lego/legoomni/include/act3actors.h @@ -13,6 +13,7 @@ class LegoWorld; // VTABLE: LEGO1 0x100d7668 LegoPathActor // VTABLE: LEGO1 0x100d7738 LegoAnimActor // VTABLE: BETA10 0x101b8a98 LegoPathActor +// VTABLE: BETA10 0x101b8b88 LegoAnimActor // SIZE 0x178 class Act3Actor : public LegoAnimActor { public: @@ -30,6 +31,7 @@ public: Act3Actor(); // FUNCTION: LEGO1 0x100431b0 + // FUNCTION: BETA10 0x1001d320 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03ac @@ -145,6 +147,7 @@ public: // FUNCTION: LEGO1 0x100430d0 const char* ClassName() const override // vtable+0x0c { + // Does not exist in BETA10 // STRING: LEGO1 0x100f03a0 return "Act3Shark"; } diff --git a/LEGO1/lego/legoomni/include/ambulance.h b/LEGO1/lego/legoomni/include/ambulance.h index 4908d55c..e6d2a4aa 100644 --- a/LEGO1/lego/legoomni/include/ambulance.h +++ b/LEGO1/lego/legoomni/include/ambulance.h @@ -7,12 +7,14 @@ class MxEndActionNotificationParam; // VTABLE: LEGO1 0x100d72a0 +// VTABLE: BETA10 0x101b91a8 // SIZE 0x24 class AmbulanceMissionState : public LegoState { public: AmbulanceMissionState(); // FUNCTION: LEGO1 0x10037600 + // FUNCTION: BETA10 0x100246c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f00e8 @@ -100,6 +102,7 @@ public: }; // VTABLE: LEGO1 0x100d71a8 +// VTABLE: BETA10 0x101b8f70 // SIZE 0x184 class Ambulance : public IslePathActor { public: @@ -110,6 +113,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10035fa0 + // FUNCTION: BETA10 0x100240b0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03c4 diff --git a/LEGO1/lego/legoomni/include/bike.h b/LEGO1/lego/legoomni/include/bike.h index b69c0c67..dded37ba 100644 --- a/LEGO1/lego/legoomni/include/bike.h +++ b/LEGO1/lego/legoomni/include/bike.h @@ -5,12 +5,14 @@ #include "islepathactor.h" // VTABLE: LEGO1 0x100d9808 +// VTABLE: BETA10 0x101b91e8 // SIZE 0x164 class Bike : public IslePathActor { public: Bike(); // FUNCTION: LEGO1 0x100766f0 + // FUNCTION: BETA10 0x10024bd0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03d0 diff --git a/LEGO1/lego/legoomni/include/buildingentity.h b/LEGO1/lego/legoomni/include/buildingentity.h index 81bd2fba..aaab8302 100644 --- a/LEGO1/lego/legoomni/include/buildingentity.h +++ b/LEGO1/lego/legoomni/include/buildingentity.h @@ -6,6 +6,7 @@ class LegoEventNotificationParam; // VTABLE: LEGO1 0x100d5c88 +// VTABLE: BETA10 0x101b9320 // SIZE 0x68 class BuildingEntity : public LegoEntity { public: @@ -15,6 +16,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10014f20 + // FUNCTION: BETA10 0x10025f50 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f07e8 diff --git a/LEGO1/lego/legoomni/include/buildings.h b/LEGO1/lego/legoomni/include/buildings.h index 469a4936..71201a48 100644 --- a/LEGO1/lego/legoomni/include/buildings.h +++ b/LEGO1/lego/legoomni/include/buildings.h @@ -6,9 +6,11 @@ class LegoEventNotificationParam; // VTABLE: LEGO1 0x100d48a8 +// VTABLE: BETA10 0x101bd818 // SIZE 0x68 class RaceStandsEntity : public BuildingEntity { // FUNCTION: LEGO1 0x1000efa0 + // FUNCTION: BETA10 0x100a9820 const char* ClassName() const override // vtable+0x0c { // at LEGO1 0x100f0300, needs no annotation @@ -28,10 +30,12 @@ class RaceStandsEntity : public BuildingEntity { }; // VTABLE: LEGO1 0x100d4a18 +// VTABLE: BETA10 0x101bd7b0 // SIZE 0x68 class BeachHouseEntity : public BuildingEntity { public: // FUNCTION: LEGO1 0x1000ee80 + // FUNCTION: BETA10 0x100a96f0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0314 @@ -51,10 +55,12 @@ public: }; // VTABLE: LEGO1 0x100d4ab0 +// VTABLE: BETA10 0x101bd748 // SIZE 0x68 class PoliceEntity : public BuildingEntity { public: // FUNCTION: LEGO1 0x1000ed60 + // FUNCTION: BETA10 0x100a95c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0328 @@ -74,10 +80,12 @@ public: }; // VTABLE: LEGO1 0x100d4b90 +// VTABLE: BETA10 0x101bd610 // SIZE 0x68 class InfoCenterEntity : public BuildingEntity { public: // FUNCTION: LEGO1 0x1000ea00 + // FUNCTION: BETA10 0x100a9230 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f035c @@ -97,10 +105,12 @@ public: }; // VTABLE: LEGO1 0x100d5068 +// VTABLE: BETA10 0x101bd678 // SIZE 0x68 class HospitalEntity : public BuildingEntity { public: // FUNCTION: LEGO1 0x1000ec40 + // FUNCTION: BETA10 0x100a9360 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0338 @@ -120,9 +130,11 @@ public: }; // VTABLE: LEGO1 0x100d50c0 +// VTABLE: BETA10 0x101bd880 // SIZE 0x68 class CaveEntity : public BuildingEntity { // FUNCTION: LEGO1 0x1000f1e0 + // FUNCTION: BETA10 0x100a9950 const char* ClassName() const override // vtable+0x0c { // at LEGO1 0x100f0300, needs no annotation @@ -142,9 +154,11 @@ class CaveEntity : public BuildingEntity { }; // VTABLE: LEGO1 0x100d5200 +// VTABLE: BETA10 0x101bd8e8 // SIZE 0x68 class JailEntity : public BuildingEntity { // FUNCTION: LEGO1 0x1000f0c0 + // FUNCTION: BETA10 0x100a9a80 const char* ClassName() const override // vtable+0x0c { // at LEGO1 0x100f0300, needs no annotation @@ -164,10 +178,12 @@ class JailEntity : public BuildingEntity { }; // VTABLE: LEGO1 0x100d5258 +// VTABLE: BETA10 0x101bd6e0 // SIZE 0x68 class GasStationEntity : public BuildingEntity { public: // FUNCTION: LEGO1 0x1000eb20 + // FUNCTION: BETA10 0x100a9490 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0348 diff --git a/LEGO1/lego/legoomni/include/bumpbouy.h b/LEGO1/lego/legoomni/include/bumpbouy.h index 0399ee9c..b2877034 100644 --- a/LEGO1/lego/legoomni/include/bumpbouy.h +++ b/LEGO1/lego/legoomni/include/bumpbouy.h @@ -6,6 +6,8 @@ // VTABLE: LEGO1 0x100d6790 LegoPathActor // VTABLE: LEGO1 0x100d6860 LegoAnimActor +// VTABLE: BETA10 0x101b9430 LegoPathActor +// VTABLE: BETA10 0x101b9520 LegoAnimActor // SIZE 0x174 class BumpBouy : public LegoAnimActor { public: @@ -14,6 +16,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x100274f0 + // FUNCTION: BETA10 0x10026790 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0394 diff --git a/LEGO1/lego/legoomni/include/doors.h b/LEGO1/lego/legoomni/include/doors.h index 3a987c9f..5aad2dba 100644 --- a/LEGO1/lego/legoomni/include/doors.h +++ b/LEGO1/lego/legoomni/include/doors.h @@ -6,12 +6,14 @@ class LegoROI; // VTABLE: LEGO1 0x100d4788 +// VTABLE: BETA10 0x101bcfb8 // SIZE 0x1f8 class Doors : public LegoPathActor { public: Doors() : m_unk0x154(0), m_ltDoor(NULL), m_rtDoor(NULL), m_unk0x1f4(0) {} // FUNCTION: LEGO1 0x1000e430 + // FUNCTION: BETA10 0x100a7f20 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03e8 diff --git a/LEGO1/lego/legoomni/include/dunebuggy.h b/LEGO1/lego/legoomni/include/dunebuggy.h index cfb8c729..f1b45a15 100644 --- a/LEGO1/lego/legoomni/include/dunebuggy.h +++ b/LEGO1/lego/legoomni/include/dunebuggy.h @@ -5,12 +5,14 @@ #include "islepathactor.h" // VTABLE: LEGO1 0x100d8f98 +// VTABLE: BETA10 0x101b95c0 // SIZE 0x16c class DuneBuggy : public IslePathActor { public: DuneBuggy(); // FUNCTION: LEGO1 0x10067c30 + // FUNCTION: BETA10 0x100278a0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0410 diff --git a/LEGO1/lego/legoomni/include/elevatorbottom.h b/LEGO1/lego/legoomni/include/elevatorbottom.h index ec7244c6..899a830a 100644 --- a/LEGO1/lego/legoomni/include/elevatorbottom.h +++ b/LEGO1/lego/legoomni/include/elevatorbottom.h @@ -8,6 +8,7 @@ class LegoControlManagerNotificationParam; // VTABLE: LEGO1 0x100d5f20 +// VTABLE: BETA10 0x101b96f0 // SIZE 0xfc class ElevatorBottom : public LegoWorld { public: @@ -17,6 +18,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10017f20 + // FUNCTION: BETA10 0x10028130 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04ac diff --git a/LEGO1/lego/legoomni/include/gasstation.h b/LEGO1/lego/legoomni/include/gasstation.h index b53fc0f7..76b2d17c 100644 --- a/LEGO1/lego/legoomni/include/gasstation.h +++ b/LEGO1/lego/legoomni/include/gasstation.h @@ -10,6 +10,7 @@ class MxStillPresenter; // VTABLE: LEGO1 0x100d46e0 +// VTABLE: BETA10 0x101b9818 // SIZE 0x24 class GasStationState : public LegoState { public: @@ -21,6 +22,7 @@ public: GasStationState(); // FUNCTION: LEGO1 0x100061d0 + // FUNCTION: BETA10 0x10029f50 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0174 @@ -54,6 +56,7 @@ public: }; // VTABLE: LEGO1 0x100d4650 +// VTABLE: BETA10 0x101b97a0 // SIZE 0x128 class GasStation : public LegoWorld { public: @@ -64,6 +67,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10004780 + // FUNCTION: BETA10 0x10029d40 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0168 diff --git a/LEGO1/lego/legoomni/include/helicopter.h b/LEGO1/lego/legoomni/include/helicopter.h index 23285f1e..2f64238d 100644 --- a/LEGO1/lego/legoomni/include/helicopter.h +++ b/LEGO1/lego/legoomni/include/helicopter.h @@ -8,12 +8,14 @@ class Act3; // VTABLE: LEGO1 0x100d5418 +// VTABLE: BETA10 0x101bcf98 // SIZE 0x0c class HelicopterState : public LegoState { public: HelicopterState() : m_unk0x08(0) {} // FUNCTION: LEGO1 0x1000e0d0 + // FUNCTION: BETA10 0x100a7cc0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0144 diff --git a/LEGO1/lego/legoomni/include/historybook.h b/LEGO1/lego/legoomni/include/historybook.h index 3cc04679..38f174a0 100644 --- a/LEGO1/lego/legoomni/include/historybook.h +++ b/LEGO1/lego/legoomni/include/historybook.h @@ -8,6 +8,7 @@ class MxStillPresenter; // VTABLE: LEGO1 0x100da328 +// VTABLE: BETA10 0x101b99b0 // SIZE 0x3e4 class HistoryBook : public LegoWorld { public: @@ -17,6 +18,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10082390 + // FUNCTION: BETA10 0x1002c1c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04bc diff --git a/LEGO1/lego/legoomni/include/hospital.h b/LEGO1/lego/legoomni/include/hospital.h index 28c09ddc..41465550 100644 --- a/LEGO1/lego/legoomni/include/hospital.h +++ b/LEGO1/lego/legoomni/include/hospital.h @@ -12,6 +12,7 @@ class MxEndActionNotificationParam; class MxStillPresenter; // VTABLE: LEGO1 0x100d97a0 +// VTABLE: BETA10 0x101b9ad8 // SIZE 0x18 class HospitalState : public LegoState { public: @@ -24,6 +25,7 @@ public: ~HospitalState() override {} // FUNCTION: LEGO1 0x10076400 + // FUNCTION: BETA10 0x1002e3c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0480 @@ -53,6 +55,7 @@ public: }; // VTABLE: LEGO1 0x100d9730 +// VTABLE: BETA10 0x101b9a60 // SIZE 0x12c class Hospital : public LegoWorld { public: @@ -63,6 +66,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x100746b0 + // FUNCTION: BETA10 0x1002e1a0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0490 diff --git a/LEGO1/lego/legoomni/include/infocenter.h b/LEGO1/lego/legoomni/include/infocenter.h index 1738f3f5..90ec3ea3 100644 --- a/LEGO1/lego/legoomni/include/infocenter.h +++ b/LEGO1/lego/legoomni/include/infocenter.h @@ -13,6 +13,7 @@ class MxStillPresenter; class LegoControlManagerNotificationParam; // VTABLE: LEGO1 0x100d93a8 +// VTABLE: BETA10 0x101b9b88 // SIZE 0x94 class InfocenterState : public LegoState { public: @@ -20,6 +21,7 @@ public: ~InfocenterState() override; // FUNCTION: LEGO1 0x10071840 + // FUNCTION: BETA10 0x10031ee0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04dc @@ -73,6 +75,7 @@ struct InfocenterMapEntry { }; // VTABLE: LEGO1 0x100d9338 +// VTABLE: BETA10 0x101b9b10 // SIZE 0x1d8 class Infocenter : public LegoWorld { public: @@ -102,6 +105,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1006eb40 + // FUNCTION: BETA10 0x100316e0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04ec diff --git a/LEGO1/lego/legoomni/include/infocenterdoor.h b/LEGO1/lego/legoomni/include/infocenterdoor.h index 73e1c41b..10caba7d 100644 --- a/LEGO1/lego/legoomni/include/infocenterdoor.h +++ b/LEGO1/lego/legoomni/include/infocenterdoor.h @@ -7,6 +7,7 @@ class LegoControlManagerNotificationParam; // VTABLE: LEGO1 0x100d72d8 +// VTABLE: BETA10 0x101b9bc0 // SIZE 0xfc class InfocenterDoor : public LegoWorld { public: @@ -16,6 +17,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x100377b0 + // FUNCTION: BETA10 0x10032790 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f049c diff --git a/LEGO1/lego/legoomni/include/isle.h b/LEGO1/lego/legoomni/include/isle.h index 9783e4ec..9eb7e760 100644 --- a/LEGO1/lego/legoomni/include/isle.h +++ b/LEGO1/lego/legoomni/include/isle.h @@ -24,6 +24,7 @@ class SkateBoard; class TowTrack; // VTABLE: LEGO1 0x100d7028 +// VTABLE: BETA10 0x101b9d40 // SIZE 0x26c class Act1State : public LegoState { public: @@ -36,6 +37,7 @@ public: Act1State(); // FUNCTION: LEGO1 0x100338a0 + // FUNCTION: BETA10 0x10036040 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0154 diff --git a/LEGO1/lego/legoomni/include/isleactor.h b/LEGO1/lego/legoomni/include/isleactor.h index 5604c761..56df85f4 100644 --- a/LEGO1/lego/legoomni/include/isleactor.h +++ b/LEGO1/lego/legoomni/include/isleactor.h @@ -10,12 +10,14 @@ class MxEndActionNotificationParam; class MxNotificationParam; // VTABLE: LEGO1 0x100d5178 +// VTABLE: BETA10 0x101bd150 // SIZE 0x7c class IsleActor : public LegoActor { public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x1000e660 + // FUNCTION: BETA10 0x100a8300 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f07dc diff --git a/LEGO1/lego/legoomni/include/islepathactor.h b/LEGO1/lego/legoomni/include/islepathactor.h index 767b1b1a..1aa5616a 100644 --- a/LEGO1/lego/legoomni/include/islepathactor.h +++ b/LEGO1/lego/legoomni/include/islepathactor.h @@ -12,6 +12,7 @@ class LegoWorld; class LegoPathStructNotificationParam; // VTABLE: LEGO1 0x100d4398 +// VTABLE: BETA10 0x101b9090 // SIZE 0x160 class IslePathActor : public LegoPathActor { public: @@ -91,6 +92,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10002ea0 + // FUNCTION: BETA10 0x10023fa0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0104 diff --git a/LEGO1/lego/legoomni/include/jetski.h b/LEGO1/lego/legoomni/include/jetski.h index 4dcdc36a..cf2139d5 100644 --- a/LEGO1/lego/legoomni/include/jetski.h +++ b/LEGO1/lego/legoomni/include/jetski.h @@ -7,12 +7,14 @@ class LegoControlManagerNotificationParam; // VTABLE: LEGO1 0x100d9ec8 +// VTABLE: BETA10 0x101ba540 // SIZE 0x164 class Jetski : public IslePathActor { public: Jetski(); // FUNCTION: LEGO1 0x1007e430 + // FUNCTION: BETA10 0x10037910 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03d8 diff --git a/LEGO1/lego/legoomni/include/jukebox.h b/LEGO1/lego/legoomni/include/jukebox.h index 499fdd35..b3512503 100644 --- a/LEGO1/lego/legoomni/include/jukebox.h +++ b/LEGO1/lego/legoomni/include/jukebox.h @@ -9,6 +9,7 @@ class LegoControlManagerNotificationParam; // VTABLE: LEGO1 0x100d4a90 +// VTABLE: BETA10 0x101ba6e8 // SIZE 0x10 class JukeBoxState : public LegoState { public: @@ -24,6 +25,7 @@ public: JukeBoxState() : m_music(e_pasquell), m_active(FALSE) {} // FUNCTION: LEGO1 0x1000f310 + // FUNCTION: BETA10 0x100389c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f02bc @@ -47,6 +49,7 @@ public: }; // VTABLE: LEGO1 0x100d8958 +// VTABLE: BETA10 0x101ba670 // SIZE 0x104 class JukeBox : public LegoWorld { public: @@ -57,6 +60,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1005d6f0 + // FUNCTION: BETA10 0x100388d0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f02cc diff --git a/LEGO1/lego/legoomni/include/jukeboxentity.h b/LEGO1/lego/legoomni/include/jukeboxentity.h index a465dd1b..bfccaf09 100644 --- a/LEGO1/lego/legoomni/include/jukeboxentity.h +++ b/LEGO1/lego/legoomni/include/jukeboxentity.h @@ -5,6 +5,7 @@ #include "legoentity.h" // VTABLE: LEGO1 0x100da8a0 +// VTABLE: BETA10 0x101ba728 // SIZE 0x6c class JukeBoxEntity : public LegoEntity { public: @@ -14,6 +15,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10085cc0 + // FUNCTION: BETA10 0x10039480 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f02f0 diff --git a/LEGO1/lego/legoomni/include/legoact2.h b/LEGO1/lego/legoomni/include/legoact2.h index 8788af3e..89da6c41 100644 --- a/LEGO1/lego/legoomni/include/legoact2.h +++ b/LEGO1/lego/legoomni/include/legoact2.h @@ -11,6 +11,7 @@ class LegoPathStructNotificationParam; class MxEndActionNotificationParam; // VTABLE: LEGO1 0x100d4a70 +// VTABLE: BETA10 0x101ba910 // SIZE 0x10 class LegoAct2State : public LegoState { public: @@ -22,6 +23,7 @@ public: ~LegoAct2State() override {} // FUNCTION: LEGO1 0x1000df80 + // FUNCTION: BETA10 0x1003c7e0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0428 diff --git a/LEGO1/lego/legoomni/include/legoactor.h b/LEGO1/lego/legoomni/include/legoactor.h index 75ea7e63..7c29ee6b 100644 --- a/LEGO1/lego/legoomni/include/legoactor.h +++ b/LEGO1/lego/legoomni/include/legoactor.h @@ -7,6 +7,7 @@ class LegoCacheSound; // VTABLE: LEGO1 0x100d6d68 +// VTABLE: BETA10 0x101ba970 // SIZE 0x78 class LegoActor : public LegoEntity { public: @@ -24,6 +25,7 @@ public: ~LegoActor() override; // FUNCTION: LEGO1 0x1002d210 + // FUNCTION: BETA10 0x10012760 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0124 diff --git a/LEGO1/lego/legoomni/include/legoanimationmanager.h b/LEGO1/lego/legoomni/include/legoanimationmanager.h index 788b8fe8..49fd4155 100644 --- a/LEGO1/lego/legoomni/include/legoanimationmanager.h +++ b/LEGO1/lego/legoomni/include/legoanimationmanager.h @@ -49,6 +49,7 @@ struct AnimInfo { }; // VTABLE: LEGO1 0x100d8d80 +// VTABLE: BETA10 0x101bae58 // SIZE 0x1c class AnimState : public LegoState { public: @@ -56,6 +57,7 @@ public: ~AnimState() override; // vtable+0x00 // FUNCTION: LEGO1 0x10065070 + // FUNCTION: BETA10 0x1004afe0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0460 @@ -91,6 +93,7 @@ private: }; // VTABLE: LEGO1 0x100d8c18 +// VTABLE: BETA10 0x101bab60 // SIZE 0x500 class LegoAnimationManager : public MxCore { public: @@ -141,6 +144,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1005ec80 + // FUNCTION: BETA10 0x100483d0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f7508 diff --git a/LEGO1/lego/legoomni/include/legobuildingmanager.h b/LEGO1/lego/legoomni/include/legobuildingmanager.h index 41b5a8fd..bac64396 100644 --- a/LEGO1/lego/legoomni/include/legobuildingmanager.h +++ b/LEGO1/lego/legoomni/include/legobuildingmanager.h @@ -58,6 +58,7 @@ public: // FUNCTION: LEGO1 0x1002f930 const char* ClassName() const override // vtable+0x0c { + // not in BETA10 // STRING: LEGO1 0x100f37d0 return "LegoBuildingManager"; } diff --git a/LEGO1/lego/legoomni/include/legocachsound.h b/LEGO1/lego/legoomni/include/legocachsound.h index 59834811..ea55d7fc 100644 --- a/LEGO1/lego/legoomni/include/legocachsound.h +++ b/LEGO1/lego/legoomni/include/legocachsound.h @@ -16,6 +16,7 @@ public: // FUNCTION: LEGO1 0x10006580 const char* ClassName() const override // vtable+0x0c { + // not in BETA10 // STRING: LEGO1 0x100f01c4 return "LegoCacheSound"; } diff --git a/LEGO1/lego/legoomni/include/legocameracontroller.h b/LEGO1/lego/legoomni/include/legocameracontroller.h index c4a10146..96934e4f 100644 --- a/LEGO1/lego/legoomni/include/legocameracontroller.h +++ b/LEGO1/lego/legoomni/include/legocameracontroller.h @@ -7,6 +7,7 @@ #include "mxpoint32.h" // VTABLE: LEGO1 0x100d57b0 +// VTABLE: BETA10 0x101bb748 // SIZE 0xc8 class LegoCameraController : public LegoPointOfViewController { public: @@ -16,6 +17,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+04 // FUNCTION: LEGO1 0x10011ec0 + // FUNCTION: BETA10 0x1006a950 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0850 diff --git a/LEGO1/lego/legoomni/include/legocarbuild.h b/LEGO1/lego/legoomni/include/legocarbuild.h index 945d7d06..336f67de 100644 --- a/LEGO1/lego/legoomni/include/legocarbuild.h +++ b/LEGO1/lego/legoomni/include/legocarbuild.h @@ -45,8 +45,6 @@ public: // SYNTHETIC: LEGO1 0x100260a0 // LegoVehicleBuildState::`scalar deleting destructor' - // TODO: Most likely getters/setters are not used according to BETA. - Playlist m_unk0x08[4]; // 0x08 // This can be one of the following: @@ -93,6 +91,7 @@ public: ~LegoCarBuild() override; // FUNCTION: LEGO1 0x10022940 + // FUNCTION: BETA10 0x10070090 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0504 diff --git a/LEGO1/lego/legoomni/include/legocontrolmanager.h b/LEGO1/lego/legoomni/include/legocontrolmanager.h index 1daf82e2..233304cf 100644 --- a/LEGO1/lego/legoomni/include/legocontrolmanager.h +++ b/LEGO1/lego/legoomni/include/legocontrolmanager.h @@ -40,6 +40,7 @@ public: // LegoControlManagerNotificationParam::~LegoControlManagerNotificationParam // VTABLE: LEGO1 0x100d6a80 +// VTABLE: BETA10 0x101bc610 class LegoControlManager : public MxCore { public: LegoControlManager(); diff --git a/LEGO1/lego/legoomni/include/legoextraactor.h b/LEGO1/lego/legoomni/include/legoextraactor.h index 5bc316a3..8c354a59 100644 --- a/LEGO1/lego/legoomni/include/legoextraactor.h +++ b/LEGO1/lego/legoomni/include/legoextraactor.h @@ -6,7 +6,9 @@ // VTABLE: LEGO1 0x100d6c00 LegoAnimActor // VTABLE: LEGO1 0x100d6c10 LegoPathActor // VTABLE: LEGO1 0x100d6cdc LegoExtraActor +// VTABLE: BETA10 0x101bc2a0 LegoAnimActor // VTABLE: BETA10 0x101bc2b8 LegoPathActor +// VTABLE: BETA10 0x101bc3a8 LegoExtraActor // SIZE 0x1dc class LegoExtraActor : public virtual LegoAnimActor { public: @@ -21,6 +23,7 @@ public: ~LegoExtraActor() override; // FUNCTION: LEGO1 0x1002b7b0 + // FUNCTION: BETA10 0x100831a0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f3204 diff --git a/LEGO1/lego/legoomni/include/legomain.h b/LEGO1/lego/legoomni/include/legomain.h index 58780b7e..1ab6c2ee 100644 --- a/LEGO1/lego/legoomni/include/legomain.h +++ b/LEGO1/lego/legoomni/include/legomain.h @@ -28,6 +28,7 @@ class MxTransitionManager; class ViewLODListManager; // VTABLE: LEGO1 0x100d8638 +// VTABLE: BETA10 0x101bc8b8 // SIZE 0x140 class LegoOmni : public MxOmni { public: @@ -103,6 +104,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10058aa0 + // FUNCTION: BETA10 0x1008f830 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f671c diff --git a/LEGO1/lego/legoomni/include/legopathactor.h b/LEGO1/lego/legoomni/include/legopathactor.h index e9ef2af2..35dbbbe8 100644 --- a/LEGO1/lego/legoomni/include/legopathactor.h +++ b/LEGO1/lego/legoomni/include/legopathactor.h @@ -39,6 +39,7 @@ public: ~LegoPathActor() override; // FUNCTION: LEGO1 0x1000c430 + // FUNCTION: BETA10 0x10012790 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0114 diff --git a/LEGO1/lego/legoomni/include/legopathcontroller.h b/LEGO1/lego/legoomni/include/legopathcontroller.h index 37096cc2..01094fe6 100644 --- a/LEGO1/lego/legoomni/include/legopathcontroller.h +++ b/LEGO1/lego/legoomni/include/legopathcontroller.h @@ -34,6 +34,7 @@ struct LegoPathCtrlEdgeCompare { typedef set LegoPathCtrlEdgeSet; // VTABLE: LEGO1 0x100d7d60 +// VTABLE: BETA10 0x101bde20 // SIZE 0x40 class LegoPathController : public MxCore { public: @@ -69,6 +70,7 @@ public: MxResult Tickle() override; // vtable+08 // FUNCTION: LEGO1 0x10045110 + // FUNCTION: BETA10 0x100ba560 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f11b8 diff --git a/LEGO1/lego/legoomni/include/legoplantmanager.h b/LEGO1/lego/legoomni/include/legoplantmanager.h index ed83763b..a7a821d1 100644 --- a/LEGO1/lego/legoomni/include/legoplantmanager.h +++ b/LEGO1/lego/legoomni/include/legoplantmanager.h @@ -31,6 +31,8 @@ public: // FUNCTION: LEGO1 0x10026290 const char* ClassName() const override // vtable+0x0c { + // While this class exists in BETA10, it didn't have a ClassName(). + // I suppose it did not inherit from MxCore back then and likely did not have a VTABLE. // STRING: LEGO1 0x100f318c return "LegoPlantManager"; } @@ -57,6 +59,8 @@ public: void FUN_10027200(); static void SetCustomizeAnimFile(const char* p_value); + + // FUNCTION: BETA10 0x1007ffa0 static const char* GetCustomizeAnimFile() { return g_customizeAnimFile; } // SYNTHETIC: LEGO1 0x100262a0 diff --git a/LEGO1/lego/legoomni/include/legoracers.h b/LEGO1/lego/legoomni/include/legoracers.h index 8c50bea2..3cc4df2e 100644 --- a/LEGO1/lego/legoomni/include/legoracers.h +++ b/LEGO1/lego/legoomni/include/legoracers.h @@ -105,6 +105,11 @@ private: // VTABLE: LEGO1 0x100d5a30 LegoAnimActor // VTABLE: LEGO1 0x100d5a40 LegoPathActor // VTABLE: LEGO1 0x100d5b10 LegoRaceMap +// VTABLE: BETA10 0x101be8a0 LegoCarRaceActor +// VTABLE: BETA10 0x101be8c8 LegoRaceActor +// VTABLE: BETA10 0x101be8d0 LegoAnimActor +// VTABLE: BETA10 0x101be8e8 LegoPathActor +// VTABLE: BETA10 0x101be9d8 LegoRaceMap // SIZE 0x1dc class LegoJetski : public LegoJetskiRaceActor, public LegoRaceMap { public: @@ -114,6 +119,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x10013e90 + // FUNCTION: BETA10 0x100cd1f0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f053c diff --git a/LEGO1/lego/legoomni/include/motorcycle.h b/LEGO1/lego/legoomni/include/motorcycle.h index a95ba705..39567676 100644 --- a/LEGO1/lego/legoomni/include/motorcycle.h +++ b/LEGO1/lego/legoomni/include/motorcycle.h @@ -5,12 +5,14 @@ #include "islepathactor.h" // VTABLE: LEGO1 0x100d7090 +// VTABLE: BETA10 0x101bf3d8 // SIZE 0x16c class Motocycle : public IslePathActor { public: Motocycle(); // FUNCTION: LEGO1 0x10035840 + // FUNCTION: BETA10 0x100e83c0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f38e8 diff --git a/LEGO1/lego/legoomni/include/mxbackgroundaudiomanager.h b/LEGO1/lego/legoomni/include/mxbackgroundaudiomanager.h index 210f646c..8cf18412 100644 --- a/LEGO1/lego/legoomni/include/mxbackgroundaudiomanager.h +++ b/LEGO1/lego/legoomni/include/mxbackgroundaudiomanager.h @@ -9,6 +9,7 @@ class MxAudioPresenter; // VTABLE: LEGO1 0x100d9fe8 +// VTABLE: BETA10 0x101bf508 // SIZE 0x150 class MxBackgroundAudioManager : public MxCore { public: @@ -19,6 +20,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1007eb70 + // FUNCTION: BETA10 0x100e9af0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f7ac4 diff --git a/LEGO1/lego/legoomni/include/mxcompositemediapresenter.h b/LEGO1/lego/legoomni/include/mxcompositemediapresenter.h index dcc0ac21..3ccc12d7 100644 --- a/LEGO1/lego/legoomni/include/mxcompositemediapresenter.h +++ b/LEGO1/lego/legoomni/include/mxcompositemediapresenter.h @@ -4,6 +4,7 @@ #include "mxcompositepresenter.h" // VTABLE: LEGO1 0x100d96b0 +// VTABLE: BETA10 0x101bf540 // SIZE 0x50 class MxCompositeMediaPresenter : public MxCompositePresenter { public: @@ -13,6 +14,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10073f10 + // FUNCTION: BETA10 0x100ea920 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f02d4 diff --git a/LEGO1/lego/legoomni/include/mxcontrolpresenter.h b/LEGO1/lego/legoomni/include/mxcontrolpresenter.h index 10473e84..3d42526f 100644 --- a/LEGO1/lego/legoomni/include/mxcontrolpresenter.h +++ b/LEGO1/lego/legoomni/include/mxcontrolpresenter.h @@ -8,6 +8,7 @@ class LegoControlManagerNotificationParam; class MxVideoPresenter; // VTABLE: LEGO1 0x100d7b88 +// VTABLE: BETA10 0x101bf5d0 // SIZE 0x5c class MxControlPresenter : public MxCompositePresenter { public: @@ -15,6 +16,7 @@ public: ~MxControlPresenter() override; // FUNCTION: LEGO1 0x10044000 + // FUNCTION: BETA10 0x100ebf80 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0514 diff --git a/LEGO1/lego/legoomni/include/mxtransitionmanager.h b/LEGO1/lego/legoomni/include/mxtransitionmanager.h index 178b114a..2019430c 100644 --- a/LEGO1/lego/legoomni/include/mxtransitionmanager.h +++ b/LEGO1/lego/legoomni/include/mxtransitionmanager.h @@ -9,6 +9,7 @@ class MxVideoPresenter; // VTABLE: LEGO1 0x100d7ea0 +// VTABLE: BETA10 0x101bf670 // SIZE 0x900 class MxTransitionManager : public MxCore { public: @@ -20,6 +21,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x1004b950 + // FUNCTION: BETA10 0x100ed8e0 const char* ClassName() const override // vtable+0x0c { return "MxTransitionManager"; diff --git a/LEGO1/lego/legoomni/include/pizza.h b/LEGO1/lego/legoomni/include/pizza.h index a9457c24..771d1178 100644 --- a/LEGO1/lego/legoomni/include/pizza.h +++ b/LEGO1/lego/legoomni/include/pizza.h @@ -11,6 +11,7 @@ class PizzeriaState; class SkateBoard; // VTABLE: LEGO1 0x100d7408 +// VTABLE: BETA10 0x101bf750 // SIZE 0xb4 class PizzaMissionState : public LegoState { public: @@ -126,6 +127,7 @@ public: PizzaMissionState(); // FUNCTION: LEGO1 0x10039290 + // FUNCTION: BETA10 0x100efa20 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f00d4 @@ -173,6 +175,7 @@ public: }; // VTABLE: LEGO1 0x100d7380 +// VTABLE: BETA10 0x101bf6b0 // SIZE 0x9c class Pizza : public IsleActor { public: @@ -182,6 +185,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10037f90 + // FUNCTION: BETA10 0x100ef300 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f038c diff --git a/LEGO1/lego/legoomni/include/pizzeria.h b/LEGO1/lego/legoomni/include/pizzeria.h index 52bb9827..395dc1ca 100644 --- a/LEGO1/lego/legoomni/include/pizzeria.h +++ b/LEGO1/lego/legoomni/include/pizzeria.h @@ -9,12 +9,14 @@ class PizzaMissionState; // VTABLE: LEGO1 0x100d5ee8 +// VTABLE: BETA10 0x101bf788 // SIZE 0x58 class PizzeriaState : public LegoState { public: PizzeriaState(); // FUNCTION: LEGO1 0x10017c20 + // FUNCTION: BETA10 0x100f0020 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0370 @@ -46,12 +48,14 @@ public: }; // VTABLE: LEGO1 0x100d5520 +// VTABLE: BETA10 0x101bd0b0 // SIZE 0x84 class Pizzeria : public IsleActor { public: Pizzeria() : m_pizzeriaState(NULL) {} // FUNCTION: LEGO1 0x1000e780 + // FUNCTION: BETA10 0x100a81f0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0380 diff --git a/LEGO1/lego/legoomni/include/police.h b/LEGO1/lego/legoomni/include/police.h index 8524de9f..5f67d546 100644 --- a/LEGO1/lego/legoomni/include/police.h +++ b/LEGO1/lego/legoomni/include/police.h @@ -12,6 +12,7 @@ class LegoEventNotificationParam; class MxDSAction; // VTABLE: LEGO1 0x100d8af0 +// VTABLE: BETA10 0x101bf838 // SIZE 0x10 class PoliceState : public LegoState { public: @@ -19,6 +20,7 @@ public: ~PoliceState() override {} // FUNCTION: LEGO1 0x1005e860 + // FUNCTION: BETA10 0x100f0d40 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0444 @@ -48,6 +50,7 @@ public: }; // VTABLE: LEGO1 0x100d8a80 +// VTABLE: BETA10 0x101bf7c0 // SIZE 0x110 class Police : public LegoWorld { public: @@ -57,6 +60,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x1005e1e0 + // FUNCTION: BETA10 0x100f0c50 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0450 diff --git a/LEGO1/lego/legoomni/include/racecar.h b/LEGO1/lego/legoomni/include/racecar.h index ef2faa9d..2f616e90 100644 --- a/LEGO1/lego/legoomni/include/racecar.h +++ b/LEGO1/lego/legoomni/include/racecar.h @@ -5,6 +5,7 @@ #include "islepathactor.h" // VTABLE: LEGO1 0x100d6918 +// VTABLE: BETA10 0x101bf878 // SIZE 0x164 class RaceCar : public IslePathActor { public: @@ -12,6 +13,7 @@ public: ~RaceCar() override; // vtable+0x00 // FUNCTION: LEGO1 0x10028270 + // FUNCTION: BETA10 0x100f1150 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03e0 diff --git a/LEGO1/lego/legoomni/include/radio.h b/LEGO1/lego/legoomni/include/radio.h index 45354ffd..87934c47 100644 --- a/LEGO1/lego/legoomni/include/radio.h +++ b/LEGO1/lego/legoomni/include/radio.h @@ -9,12 +9,14 @@ class MxAtomId; class MxEndActionNotificationParam; // VTABLE: LEGO1 0x100d6d28 +// VTABLE: BETA10 0x101bfb08 // SIZE 0x30 class RadioState : public LegoState { public: RadioState(); // FUNCTION: LEGO1 0x1002cf60 + // FUNCTION: BETA10 0x100f2850 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04f8 @@ -47,6 +49,7 @@ public: }; // VTABLE: LEGO1 0x100d6d10 +// VTABLE: BETA10 0x101bfaf0 // SIZE 0x10 class Radio : public MxCore { public: @@ -56,6 +59,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x1002c8e0 + // FUNCTION: BETA10 0x100f2670 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f328c diff --git a/LEGO1/lego/legoomni/include/registrationbook.h b/LEGO1/lego/legoomni/include/registrationbook.h index c405a06b..3e2cf367 100644 --- a/LEGO1/lego/legoomni/include/registrationbook.h +++ b/LEGO1/lego/legoomni/include/registrationbook.h @@ -11,6 +11,7 @@ class LegoControlManagerNotificationParam; class LegoPathStructNotificationParam; // VTABLE: LEGO1 0x100d9928 +// VTABLE: BETA10 0x101bfb48 // SIZE 0x2d0 class RegistrationBook : public LegoWorld { public: @@ -21,6 +22,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x10076e10 + // FUNCTION: BETA10 0x100f4000 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f04c8 diff --git a/LEGO1/lego/legoomni/include/score.h b/LEGO1/lego/legoomni/include/score.h index 7ad505aa..0d1f9da5 100644 --- a/LEGO1/lego/legoomni/include/score.h +++ b/LEGO1/lego/legoomni/include/score.h @@ -9,12 +9,14 @@ class LegoControlManagerNotificationParam; class MxEndActionNotificationParam; // VTABLE: LEGO1 0x100d53f8 +// VTABLE: BETA10 0x101bcf78 // SIZE 0x0c class ScoreState : public LegoState { public: ScoreState() : m_playCubeTutorial(TRUE) {} // FUNCTION: LEGO1 0x1000de40 + // FUNCTION: BETA10 0x100a7a70 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0084 @@ -49,6 +51,7 @@ public: }; // VTABLE: LEGO1 0x100d4018 +// VTABLE: BETA10 0x101bfbd8 // SIZE 0x104 class Score : public LegoWorld { public: @@ -57,6 +60,7 @@ public: MxLong Notify(MxParam& p_param) override; // vtable+0x04 // FUNCTION: LEGO1 0x100010c0 + // FUNCTION: BETA10 0x100f4f20 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0050 diff --git a/LEGO1/lego/legoomni/include/skateboard.h b/LEGO1/lego/legoomni/include/skateboard.h index 0bf691c1..1ac11709 100644 --- a/LEGO1/lego/legoomni/include/skateboard.h +++ b/LEGO1/lego/legoomni/include/skateboard.h @@ -7,6 +7,7 @@ class Act1State; // VTABLE: LEGO1 0x100d55f0 +// VTABLE: BETA10 0x101bfc70 // SIZE 0x168 class SkateBoard : public IslePathActor { public: @@ -14,6 +15,7 @@ public: ~SkateBoard() override; // FUNCTION: LEGO1 0x1000fdd0 + // FUNCTION: BETA10 0x100f55d0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f041c diff --git a/LEGO1/lego/legoomni/include/towtrack.h b/LEGO1/lego/legoomni/include/towtrack.h index 822c4ecc..e20e098f 100644 --- a/LEGO1/lego/legoomni/include/towtrack.h +++ b/LEGO1/lego/legoomni/include/towtrack.h @@ -8,12 +8,14 @@ class MxEndActionNotificationParam; // VTABLE: LEGO1 0x100d7fd8 +// VTABLE: BETA10 0x101bfee0 // SIZE 0x28 class TowTrackMissionState : public LegoState { public: TowTrackMissionState(); // FUNCTION: LEGO1 0x1004dfa0 + // FUNCTION: BETA10 0x100f8920 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f00bc @@ -102,6 +104,7 @@ public: }; // VTABLE: LEGO1 0x100d7ee0 +// VTABLE: BETA10 0x101bfdc0 // SIZE 0x180 class TowTrack : public IslePathActor { public: @@ -109,6 +112,7 @@ public: ~TowTrack() override; // FUNCTION: LEGO1 0x1004c7c0 + // FUNCTION: BETA10 0x100f8440 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f03b8 diff --git a/LEGO1/lego/legoomni/src/actors/act3actors.cpp b/LEGO1/lego/legoomni/src/actors/act3actors.cpp index f09c691a..f5a5c5a4 100644 --- a/LEGO1/lego/legoomni/src/actors/act3actors.cpp +++ b/LEGO1/lego/legoomni/src/actors/act3actors.cpp @@ -92,6 +92,7 @@ Act3Actor::Act3CopDest g_copDest[5] = { Mx3DPointFloat Act3Actor::g_unk0x10104ef0 = Mx3DPointFloat(0.0, 5.0, 0.0); // FUNCTION: LEGO1 0x1003fa50 +// FUNCTION: BETA10 0x10017fb8 Act3Actor::Act3Actor() { m_unk0x1c = 0; diff --git a/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp b/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp index 4fc1abd8..22b5cc80 100644 --- a/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp +++ b/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp @@ -52,6 +52,7 @@ MxS32 LegoPlantManager::g_maxMove[4] = {3, 3, 3, 3}; MxU32 g_plantAnimationId[4] = {30, 33, 36, 39}; // GLOBAL: LEGO1 0x100f3188 +// GLOBAL: BETA10 0x101f4e70 char* LegoPlantManager::g_customizeAnimFile = NULL; // GLOBAL: LEGO1 0x10103180 @@ -65,6 +66,7 @@ LegoPlantManager::LegoPlantManager() } // FUNCTION: LEGO1 0x100262c0 +// FUNCTION: BETA10 0x100c5002 LegoPlantManager::~LegoPlantManager() { delete[] g_customizeAnimFile; @@ -74,6 +76,8 @@ LegoPlantManager::~LegoPlantManager() // FUNCTION: BETA10 0x100c4f90 void LegoPlantManager::Init() { + // In BETA10 this appears to be LegoPlantManager::LegoPlantManager() + for (MxS32 i = 0; i < sizeOfArray(g_plantInfo); i++) { g_plantInfo[i] = g_plantInfoInit[i]; } diff --git a/LEGO1/lego/legoomni/src/main/legomain.cpp b/LEGO1/lego/legoomni/src/main/legomain.cpp index b065c6e4..f69cc43c 100644 --- a/LEGO1/lego/legoomni/src/main/legomain.cpp +++ b/LEGO1/lego/legoomni/src/main/legomain.cpp @@ -153,6 +153,7 @@ void LegoOmni::Destroy() } // FUNCTION: LEGO1 0x10058e70 +// FUNCTION: BETA10 0x1008d6bf MxResult LegoOmni::Create(MxOmniCreateParam& p_param) { MxResult result = FAILURE; diff --git a/LEGO1/lego/legoomni/src/paths/legoextraactor.cpp b/LEGO1/lego/legoomni/src/paths/legoextraactor.cpp index b35f19f8..23d98359 100644 --- a/LEGO1/lego/legoomni/src/paths/legoextraactor.cpp +++ b/LEGO1/lego/legoomni/src/paths/legoextraactor.cpp @@ -28,6 +28,7 @@ MxS32 g_unk0x100f31dc = 0; Mx3DPointFloat g_unk0x10104c18 = Mx3DPointFloat(0.0f, 2.5f, 0.0f); // FUNCTION: LEGO1 0x1002a500 +// FUNCTION: BETA10 0x10080908 LegoExtraActor::LegoExtraActor() { m_unk0x70 = 0.0f; diff --git a/LEGO1/lego/legoomni/src/race/legoracers.cpp b/LEGO1/lego/legoomni/src/race/legoracers.cpp index 15d6e66e..5ebfab2e 100644 --- a/LEGO1/lego/legoomni/src/race/legoracers.cpp +++ b/LEGO1/lego/legoomni/src/race/legoracers.cpp @@ -633,12 +633,14 @@ void LegoJetski::Animate(float p_time) } // FUNCTION: LEGO1 0x10013820 +// FUNCTION: BETA10 0x100cc335 LegoJetski::LegoJetski() { NotificationManager()->Register(this); } // FUNCTION: LEGO1 0x10013aa0 +// FUNCTION: BETA10 0x100cc58e LegoJetski::~LegoJetski() { NotificationManager()->Unregister(this); diff --git a/LEGO1/lego/legoomni/src/worlds/elevatorbottom.cpp b/LEGO1/lego/legoomni/src/worlds/elevatorbottom.cpp index d8f7a05b..d01c9f7c 100644 --- a/LEGO1/lego/legoomni/src/worlds/elevatorbottom.cpp +++ b/LEGO1/lego/legoomni/src/worlds/elevatorbottom.cpp @@ -65,6 +65,7 @@ MxLong ElevatorBottom::Notify(MxParam& p_param) ret = HandleControl((LegoControlManagerNotificationParam&) p_param); break; case c_notificationTransitioned: + assert(m_destLocation != LegoGameState::e_undefined); GameState()->SwitchArea(m_destLocation); break; } diff --git a/LEGO1/library_msvc.h b/LEGO1/library_msvc.h index 94811d12..34f6941c 100644 --- a/LEGO1/library_msvc.h +++ b/LEGO1/library_msvc.h @@ -744,4 +744,28 @@ // LIBRARY: BETA10 0x100f9610 // rand +// LIBRARY: BETA10 0x100f9b90 +// _purecall + +// LIBRARY: BETA10 0x100fca70 +// _amsg_exit + +// LIBRARY: BETA10 0x1010ab30 +// _FF_MSGBANNER + +// LIBRARY: BETA10 0x1010ab90 +// _NMSG_WRITE + +// LIBRARY: BETA10 0x100fbdb0 +// _exit + +// LIBRARY: BETA10 0x10100bf0 +// _CrtDbgReport + +// GLOBAL: BETA10 0x101faf74 +// __error_mode + +// GLOBAL: BETA10 0x101faf78 +// __app_type + #endif diff --git a/LEGO1/omni/include/mxdiskstreamcontroller.h b/LEGO1/omni/include/mxdiskstreamcontroller.h index 83985a54..9a1ad22c 100644 --- a/LEGO1/omni/include/mxdiskstreamcontroller.h +++ b/LEGO1/omni/include/mxdiskstreamcontroller.h @@ -12,6 +12,7 @@ class MxDSStreamingAction; // VTABLE: LEGO1 0x100dccb8 +// VTABLE: BETA10 0x101c2818 // SIZE 0xc8 class MxDiskStreamController : public MxStreamController { public: @@ -21,6 +22,7 @@ public: MxResult Tickle() override; // vtable+0x08 // FUNCTION: LEGO1 0x100c7360 + // FUNCTION: BETA10 0x10155c00 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102144 diff --git a/LEGO1/omni/include/mxdiskstreamprovider.h b/LEGO1/omni/include/mxdiskstreamprovider.h index 2c95d9ae..aa5a9ada 100644 --- a/LEGO1/omni/include/mxdiskstreamprovider.h +++ b/LEGO1/omni/include/mxdiskstreamprovider.h @@ -23,6 +23,7 @@ public: }; // VTABLE: LEGO1 0x100dd138 +// VTABLE: BETA10 0x101c2c40 // SIZE 0x60 class MxDiskStreamProvider : public MxStreamProvider { public: @@ -30,6 +31,7 @@ public: ~MxDiskStreamProvider() override; // FUNCTION: LEGO1 0x100d1160 + // FUNCTION: BETA10 0x10164090 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x1010287c diff --git a/LEGO1/omni/include/mxdsanim.h b/LEGO1/omni/include/mxdsanim.h index d69adfab..68be4e12 100644 --- a/LEGO1/omni/include/mxdsanim.h +++ b/LEGO1/omni/include/mxdsanim.h @@ -4,6 +4,7 @@ #include "mxdsmediaaction.h" // VTABLE: LEGO1 0x100dcd88 +// VTABLE: BETA10 0x101c2b20 // SIZE 0xb8 class MxDSAnim : public MxDSMediaAction { public: @@ -14,6 +15,7 @@ public: MxDSAnim& operator=(MxDSAnim& p_dsAnim); // FUNCTION: LEGO1 0x100c9060 + // FUNCTION: BETA10 0x1015d890 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025d8 diff --git a/LEGO1/omni/include/mxdsevent.h b/LEGO1/omni/include/mxdsevent.h index 20943009..961a4bcf 100644 --- a/LEGO1/omni/include/mxdsevent.h +++ b/LEGO1/omni/include/mxdsevent.h @@ -4,6 +4,7 @@ #include "mxdsmediaaction.h" // VTABLE: LEGO1 0x100dce18 +// VTABLE: BETA10 0x101c2bb0 class MxDSEvent : public MxDSMediaAction { public: MxDSEvent(); @@ -13,6 +14,7 @@ public: MxDSEvent& operator=(MxDSEvent& p_dsEvent); // FUNCTION: LEGO1 0x100c9660 + // FUNCTION: BETA10 0x1015da10 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025f0 diff --git a/LEGO1/omni/include/mxdsmultiaction.h b/LEGO1/omni/include/mxdsmultiaction.h index 84ad1a4a..5267a792 100644 --- a/LEGO1/omni/include/mxdsmultiaction.h +++ b/LEGO1/omni/include/mxdsmultiaction.h @@ -5,6 +5,7 @@ #include "mxdsactionlist.h" // VTABLE: LEGO1 0x100dcef0 +// VTABLE: BETA10 0x101c28b0 // SIZE 0x9c class MxDSMultiAction : public MxDSAction { public: @@ -15,6 +16,7 @@ public: MxDSMultiAction& operator=(MxDSMultiAction& p_dsMultiAction); // FUNCTION: LEGO1 0x100c9f50 + // FUNCTION: BETA10 0x1015b190 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10101dbc diff --git a/LEGO1/omni/include/mxdsobjectaction.h b/LEGO1/omni/include/mxdsobjectaction.h index b4346f89..c734c2c3 100644 --- a/LEGO1/omni/include/mxdsobjectaction.h +++ b/LEGO1/omni/include/mxdsobjectaction.h @@ -4,6 +4,7 @@ #include "mxdsmediaaction.h" // VTABLE: LEGO1 0x100dccf8 +// VTABLE: BETA10 0x101c2a90 // SIZE 0xb8 class MxDSObjectAction : public MxDSMediaAction { public: @@ -13,6 +14,7 @@ public: MxDSObjectAction& operator=(MxDSObjectAction& p_dsObjectAction); // FUNCTION: LEGO1 0x100c88e0 + // FUNCTION: BETA10 0x1015c620 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025c4 diff --git a/LEGO1/omni/include/mxdsparallelaction.h b/LEGO1/omni/include/mxdsparallelaction.h index 0b6dfa8b..e96b46de 100644 --- a/LEGO1/omni/include/mxdsparallelaction.h +++ b/LEGO1/omni/include/mxdsparallelaction.h @@ -4,6 +4,7 @@ #include "mxdsmultiaction.h" // VTABLE: LEGO1 0x100dcf80 +// VTABLE: BETA10 0x101c2988 // SIZE 0x9c class MxDSParallelAction : public MxDSMultiAction { public: @@ -14,6 +15,7 @@ public: MxDSParallelAction& operator=(MxDSParallelAction& p_dsParallelAction); // FUNCTION: LEGO1 0x100caf00 + // FUNCTION: BETA10 0x1015b3a0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102608 diff --git a/LEGO1/omni/include/mxdsselectaction.h b/LEGO1/omni/include/mxdsselectaction.h index 3f3e4874..10605e66 100644 --- a/LEGO1/omni/include/mxdsselectaction.h +++ b/LEGO1/omni/include/mxdsselectaction.h @@ -6,6 +6,7 @@ #include "mxstringlist.h" // VTABLE: LEGO1 0x100dcfc8 +// VTABLE: BETA10 0x101c29d0 // SIZE 0xb0 class MxDSSelectAction : public MxDSParallelAction { public: @@ -16,6 +17,7 @@ public: MxDSSelectAction& operator=(MxDSSelectAction& p_dsSelectAction); // FUNCTION: LEGO1 0x100cb6f0 + // FUNCTION: BETA10 0x1015b460 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x1010261c diff --git a/LEGO1/omni/include/mxdsserialaction.h b/LEGO1/omni/include/mxdsserialaction.h index 9a494997..a95d226d 100644 --- a/LEGO1/omni/include/mxdsserialaction.h +++ b/LEGO1/omni/include/mxdsserialaction.h @@ -5,6 +5,7 @@ #include "mxdsmultiaction.h" // VTABLE: LEGO1 0x100dcf38 +// VTABLE: BETA10 0x101c2940 // SIZE 0xa8 class MxDSSerialAction : public MxDSMultiAction { public: @@ -15,6 +16,7 @@ public: MxDSSerialAction& operator=(MxDSSerialAction& p_dsSerialAction); // FUNCTION: LEGO1 0x100caad0 + // FUNCTION: BETA10 0x1015b2b0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f75dc diff --git a/LEGO1/omni/include/mxdssound.h b/LEGO1/omni/include/mxdssound.h index ae69e2d9..33fd42dd 100644 --- a/LEGO1/omni/include/mxdssound.h +++ b/LEGO1/omni/include/mxdssound.h @@ -4,6 +4,7 @@ #include "mxdsmediaaction.h" // VTABLE: LEGO1 0x100dcdd0 +// VTABLE: BETA10 0x101c2b68 // SIZE 0xc0 class MxDSSound : public MxDSMediaAction { public: @@ -14,6 +15,7 @@ public: MxDSSound& operator=(MxDSSound& p_dsSound); // FUNCTION: LEGO1 0x100c9330 + // FUNCTION: BETA10 0x1015d950 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025e4 diff --git a/LEGO1/omni/include/mxdssource.h b/LEGO1/omni/include/mxdssource.h index 745c2656..30ba411a 100644 --- a/LEGO1/omni/include/mxdssource.h +++ b/LEGO1/omni/include/mxdssource.h @@ -5,6 +5,7 @@ #include "mxdsbuffer.h" // VTABLE: LEGO1 0x100dc8c8 +// VTABLE: BETA10 0x101c2450 // SIZE 0x14 class MxDSSource : public MxCore { public: @@ -14,6 +15,7 @@ public: ~MxDSSource() override { delete[] m_pBuffer; } // FUNCTION: LEGO1 0x100c0010 + // FUNCTION: BETA10 0x10148cc0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102588 diff --git a/LEGO1/omni/include/mxdsstill.h b/LEGO1/omni/include/mxdsstill.h index 2621e4a2..aee7a498 100644 --- a/LEGO1/omni/include/mxdsstill.h +++ b/LEGO1/omni/include/mxdsstill.h @@ -4,6 +4,7 @@ #include "mxdsmediaaction.h" // VTABLE: LEGO1 0x100dce60 +// VTABLE: BETA10 0x101c2bf8 // SIZE 0xb8 class MxDSStill : public MxDSMediaAction { public: @@ -14,6 +15,7 @@ public: MxDSStill& operator=(MxDSStill& p_dsStill); // FUNCTION: LEGO1 0x100c9930 + // FUNCTION: BETA10 0x1015dad0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025fc diff --git a/LEGO1/omni/include/mxdssubscriber.h b/LEGO1/omni/include/mxdssubscriber.h index 54e426f2..e0334b56 100644 --- a/LEGO1/omni/include/mxdssubscriber.h +++ b/LEGO1/omni/include/mxdssubscriber.h @@ -8,6 +8,7 @@ class MxStreamController; // VTABLE: LEGO1 0x100dc698 +// VTABLE: BETA10 0x101c1d38 // SIZE 0x4c class MxDSSubscriber : public MxCore { public: @@ -15,6 +16,7 @@ public: ~MxDSSubscriber() override; // FUNCTION: LEGO1 0x100b7d50 + // FUNCTION: BETA10 0x10135180 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101020f8 diff --git a/LEGO1/omni/include/mxnextactiondatastart.h b/LEGO1/omni/include/mxnextactiondatastart.h index 59891b65..311825fe 100644 --- a/LEGO1/omni/include/mxnextactiondatastart.h +++ b/LEGO1/omni/include/mxnextactiondatastart.h @@ -4,6 +4,7 @@ #include "mxcore.h" // VTABLE: LEGO1 0x100dc9a0 +// VTABLE: BETA10 0x101c26a8 // SIZE 0x14 class MxNextActionDataStart : public MxCore { public: @@ -16,6 +17,7 @@ public: } // FUNCTION: LEGO1 0x100c1900 + // FUNCTION: BETA10 0x1014f660 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x101025a0 diff --git a/LEGO1/omni/include/mxobjectfactory.h b/LEGO1/omni/include/mxobjectfactory.h index 4abdf766..4e1d8f85 100644 --- a/LEGO1/omni/include/mxobjectfactory.h +++ b/LEGO1/omni/include/mxobjectfactory.h @@ -25,6 +25,7 @@ public: MxObjectFactory(); // FUNCTION: LEGO1 0x10008f70 + // FUNCTION: BETA10 0x100a5d20 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x100f0730 diff --git a/LEGO1/omni/include/mxramstreamcontroller.h b/LEGO1/omni/include/mxramstreamcontroller.h index 4d55a11f..c5dc547c 100644 --- a/LEGO1/omni/include/mxramstreamcontroller.h +++ b/LEGO1/omni/include/mxramstreamcontroller.h @@ -7,12 +7,14 @@ class MxDSStreamingAction; // VTABLE: LEGO1 0x100dc728 +// VTABLE: BETA10 0x101c2390 // SIZE 0x98 class MxRAMStreamController : public MxStreamController { public: MxRAMStreamController() {} // FUNCTION: LEGO1 0x100b9430 + // FUNCTION: BETA10 0x10146c10 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102118 diff --git a/LEGO1/omni/include/mxramstreamprovider.h b/LEGO1/omni/include/mxramstreamprovider.h index 29412900..50e38b35 100644 --- a/LEGO1/omni/include/mxramstreamprovider.h +++ b/LEGO1/omni/include/mxramstreamprovider.h @@ -4,6 +4,7 @@ #include "mxstreamprovider.h" // VTABLE: LEGO1 0x100dd0d0 +// VTABLE: BETA10 0x101c2ca8 // SIZE 0x24 class MxRAMStreamProvider : public MxStreamProvider { public: @@ -11,6 +12,7 @@ public: ~MxRAMStreamProvider() override; // FUNCTION: LEGO1 0x100d0970 + // FUNCTION: BETA10 0x10164bf0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102864 diff --git a/LEGO1/omni/include/mxstreamchunk.h b/LEGO1/omni/include/mxstreamchunk.h index fb72ee82..72858cfe 100644 --- a/LEGO1/omni/include/mxstreamchunk.h +++ b/LEGO1/omni/include/mxstreamchunk.h @@ -17,6 +17,7 @@ public: ~MxStreamChunk() override; // FUNCTION: LEGO1 0x100b1fe0 + // FUNCTION: BETA10 0x101344a0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10101e5c diff --git a/LEGO1/omni/include/mxstreamcontroller.h b/LEGO1/omni/include/mxstreamcontroller.h index be59c6cf..e77cd392 100644 --- a/LEGO1/omni/include/mxstreamcontroller.h +++ b/LEGO1/omni/include/mxstreamcontroller.h @@ -13,6 +13,7 @@ class MxDSStreamingAction; class MxStreamProvider; // VTABLE: LEGO1 0x100dc968 +// VTABLE: BETA10 0x101c26c0 // SIZE 0x64 class MxStreamController : public MxCore { public: @@ -20,6 +21,7 @@ public: ~MxStreamController() override; // vtable+0x00 // FUNCTION: LEGO1 0x100c0f10 + // FUNCTION: BETA10 0x10146cf0 const char* ClassName() const override // vtable+0x0c { // STRING: LEGO1 0x10102130 diff --git a/LEGO1/omni/include/mxstreamprovider.h b/LEGO1/omni/include/mxstreamprovider.h index e2960cf9..33cda8a1 100644 --- a/LEGO1/omni/include/mxstreamprovider.h +++ b/LEGO1/omni/include/mxstreamprovider.h @@ -9,12 +9,14 @@ class MxDSAction; class MxDSFile; // VTABLE: LEGO1 0x100dd100 +// VTABLE: BETA10 0x101c2c70 // SIZE 0x10 class MxStreamProvider : public MxCore { public: MxStreamProvider() : m_pLookup(NULL), m_pFile(NULL) {} // FUNCTION: LEGO1 0x100d07e0 + // FUNCTION: BETA10 0x10163d30 const char* ClassName() const override // vtable+0x0c { return "MxStreamProvider";