Stubbed a bunch of classes and annotated them for later use. Heavily wip and more of pseudocode right now.

This commit is contained in:
Cydra 2023-06-20 01:18:53 +02:00
parent 66dd2cdeb9
commit 1c9263ff85
72 changed files with 593 additions and 2 deletions

9
LEGO1/act2brick.h Normal file
View File

@ -0,0 +1,9 @@
class Act2Brick : public LegoPathActor
{
// VTABLE 100d9b60
// OFFSET LEGO1 0x1007a2b0
Act2Brick();
// Size 0x194
}

14
LEGO1/actlstate.h Normal file
View File

@ -0,0 +1,14 @@
#ifndef ACTLSTATE_H
#define ACTLSTATE_H
#include "legostate.h"
class ActlState : public LegoState
{
// OFFSET LEGO1 0x100334b0
ActlState();
// size is 0x26c
};
#endif // ACTLSTATE_H

9
LEGO1/animstate.h Normal file
View File

@ -0,0 +1,9 @@
class AnimState : public LegoState
{
// VTABLE 100d8d80
// OFFSET LEGO1 0x10064ff0
AnimState();
// Size 0x1c
}

12
LEGO1/buildingentity.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef BUILDINGENTITY_H
#define BUILDINGENTITY_H
#include "legoentity.h"
class BuildingEntity : public LegoEntity
{
// OFFSET LEGO1 0x10014e20
BuildingEntity();
};
#endif // BUILDINGENTITY_H

11
LEGO1/carracestate.h Normal file
View File

@ -0,0 +1,11 @@
#ifndef CARRACESTATE_H
#define CARRACESTATE_H
#include "racestate.h"
class CarRaceState : public RaceState
{
// No constructor
};
#endif // CARRACESTATE_H

9
LEGO1/dunebuggy.h Normal file
View File

@ -0,0 +1,9 @@
class DuneBuggy : public IslePathActor
{
// VTABLE 100d8f98
// OFFSET LEGO1 0x10067bb0
DuneBuggy()
// Size 0x16c
}

5
LEGO1/elevatorbottom.h Normal file
View File

@ -0,0 +1,5 @@
class ElevatorBottom : public LegoWorld
{
// OFFSET LEGO1 0x10017e90
ElevatorBottom();
}

13
LEGO1/gasstation.h Normal file
View File

@ -0,0 +1,13 @@
#ifndef GASSTATION_H
#define GASSTATION_H
class GasStation : public LegoWorld
{
// OFFSET LEGO1 0x100046a0
GasStation();
// Size 0x128
// Radio radio at 0x46, in constructor
};
#endif // GASSTATION_H

4
LEGO1/gasstationentity.h Normal file
View File

@ -0,0 +1,4 @@
class GasStationEntity : public BuildingEntity
{
// Size 0x68
}

16
LEGO1/gasstationstate.h Normal file
View File

@ -0,0 +1,16 @@
#ifndef GASSTATIONSTATE_H
#define GASSTATIONSTATE_H
#include "legostate.h"
class GasStationState : public LegoState
{
// OFFSET LEGO1 0x10005eb0
GasStationState();
// field 0x8 is prob MxResult
// field 0xc is prob MxResult
// field 0x10 is prob MxResult
};
#endif // GASSTATIONSTATE_H

14
LEGO1/helicopter.h Normal file
View File

@ -0,0 +1,14 @@
#ifndef HELICOPTER_H
#define HELICOPTER_H
#include "islepathactor.h"
class Helicopter : public IslePathActor
{
// OFFSET LEGO1 0x10001e60
Helicopter();
// At last size 0x230
};
#endif // HELICOPTER_H

11
LEGO1/helicopterstate.h Normal file
View File

@ -0,0 +1,11 @@
#ifndef HELICOPTERSTATE_H
#define HELICOPTERSTATE_H
#include "legostate.h"
class HelicopterState : public LegoState
{
// HelicopterState() = delete;
};
#endif // HELICOPTERSTATE_H

7
LEGO1/hospital.h Normal file
View File

@ -0,0 +1,7 @@
class Hospital : public LegoWorld
{
// OFFSET LEGO1 0x100745e0
Hospital();
// size 0x300
}

4
LEGO1/hospitalentity.h Normal file
View File

@ -0,0 +1,4 @@
class HospitalEntity : public BuildingEntity
{
// Size 0x68
}

9
LEGO1/hospitalstate.h Normal file
View File

@ -0,0 +1,9 @@
class HospitalState : public LegoState
{
// OFFSET LEGO1 0x10076370
HospitalState();
// VTABLE 0x100d97a0
// Size 0x18
}

9
LEGO1/infocenterdoor.h Normal file
View File

@ -0,0 +1,9 @@
#include "legoworld.h"
class InfoCenterDoor : public LegoWorld
{
// OFFSET LEGO1 0x10037730
InfoCenterDoor();
// Size 0xfc
}

10
LEGO1/infocenterentity.h Normal file
View File

@ -0,0 +1,10 @@
#ifndef INFOCENTERENTITY_H
#define INFOCENTERENTITY_H
#include "legoentity.h"
class InfoCenterEntity : public LegoEntity
{
};
#endif // INFOCENTERENTITY_H

9
LEGO1/infocenterstate.h Normal file
View File

@ -0,0 +1,9 @@
class InfoCenterState : public LegoState
{
// VTABLE 0x100d93a8
// OFFSET LEGO1 0x10071600
InfoCenterState();
// Size 0x94
}

8
LEGO1/isle.h Normal file
View File

@ -0,0 +1,8 @@
class Isle : public LegoWorld
{
// OFFSET LEGO1 0x10030820
Isle();
// Size 0x140
// Radio at 0x12c
}

10
LEGO1/isleactor.h Normal file
View File

@ -0,0 +1,10 @@
#ifndef ISLEACTOR_H
#define ISLEACTOR_H
#include "legoentity.h"
class IsleActor : public LegoEntity
{
};
#endif // ISLEACTOR_H

13
LEGO1/islepathactor.h Normal file
View File

@ -0,0 +1,13 @@
#ifndef ISLEPATHACTOR_H
#define ISLEPATHACTOR_H
#include "islepathactor.h"
class IslePathActor : pubic LegoPathActor
// OFFSET LEGO1 0x10001e60
GasStationState();
// At last size 0x230
};
#endif // ISLEPATHACTOR_H

10
LEGO1/jetskiRace.h Normal file
View File

@ -0,0 +1,10 @@
#ifndef JETSKIRACE_H
#define JETSKIRACE_H
class JetskiRace : public LegoRace
{
// OFFSET: LEGO1 0x10015aa0
JetskiRace();
};
#endif // JETSKIRACE_H

14
LEGO1/jukebox.h Normal file
View File

@ -0,0 +1,14 @@
#ifndef RACESTANDS2ENTITY_H
#define RACESTANDS2ENTITY_H
#include "buildingentity.h"
class JukeBox : public LegoEntity
{
// OFFSET ISLE1 0x1005d66
JukeBox();
// Size is 0x50
};
#endif // RACESTANDS2ENTITY_H

7
LEGO1/jukeboxentity.h Normal file
View File

@ -0,0 +1,7 @@
class JukeBoxEntity : public LegoEntity
{
// VTABLE 100da8a0
// OFFSET LEGO1 0x10085bc0
JukeBoxEntity();
}

5
LEGO1/jukeboxstate.h Normal file
View File

@ -0,0 +1,5 @@
class JukeBoxState : public LegoState
{
// Size 0x10
}

View File

@ -0,0 +1,4 @@
class Lego3DWavePresenter : public LegoWavePresenter
{
// Size 0xa0
}

5
LEGO1/legoact2state.h Normal file
View File

@ -0,0 +1,5 @@
class LegoAct2State : public LegoState
{
// Size 0x10
}

View File

@ -0,0 +1,4 @@
class LegoActionControlPresenter : public MxMediaPresenter
{
// Size 0x68
}

View File

@ -3,8 +3,18 @@
class LegoAnimationManager
{
// VTABLE 0x100d8c18
public:
// OFFSET LEGO1 0x1005eb60
LegoAnimationManager();
__declspec(dllexport) static void configureLegoAnimationManager(int param_1);
// OFFSET LEGO1 0x1005f130
void Init();
// Size 0x500
};
#endif // LEGOANIMATIONMANAGER_H

10
LEGO1/legoanimpresenter.h Normal file
View File

@ -0,0 +1,10 @@
class LegoAnimPresenter : public MxVideoPresenter
{
// VTABLE 0x100d90c8
// OFFSET LEGO1 0x10068420
LegoAnimPresenter();
// OFFSET LEGO1 0x100686f0
void Init();
}

View File

@ -3,8 +3,15 @@
class LegoBuildingManager
{
// VTABLE 0x100d6f50
public:
// OFFSET LEGO1 0x1002f8c0
LegoBuildingManager();
__declspec(dllexport) static void configureLegoBuildingManager(int param_1);
// OFFSET LEGO1 0x1002f9d0
void Init();
};
#endif // LEGOBUILDINGMANAGER_H

View File

@ -0,0 +1,5 @@
class LegoCarBuildAnimPresenter : public LegoAnimPresenter
{
// OFFSET LEGO1 0x10078400
LegoCarBuildAnimPresenter();
}

View File

@ -1,10 +1,16 @@
#ifndef LEGOENTITY_H
#define LEGOENTITY_H
class LegoEntity
#include "mxentity.h"
class LegoEntity : public MxEntity
{
public:
// OFFSET LEGO1 100105f0
LegoEntity();
__declspec(dllexport) virtual ~LegoEntity();
virtual const char* GetClassName() const { return "LegoEntity"; }
};
#endif // LEGOENTITY_H

View File

@ -0,0 +1,5 @@
class LegoFlcTexturePresenter : public MxFlcPresenter
{
// OFFSET LEGO1 0x1005de80
LegoFlcTexturePresenter();
}

View File

@ -0,0 +1,10 @@
class LegoHideAnimPresenter : public LegoLoopingAnimPresenter
{
// VTABLE 0x100d9278
// OFFSET LEGO1 0x1006d7e0
LegoHideAnimPresenter();
// OFFSET LEGO1 0x1006da50
void Init();
}

View File

@ -0,0 +1,15 @@
#ifndef LEGOLOADCACHESOUNDPRESENTER_H
#define LEGOLOADCACHESOUNDPRESENTER_H
class LegoLoadCacheSoundPresenter : public MxWavePresenter
{
// OFFSET LEGO1 0x10018340
LegoLoadCacheSoundPresenter();
// OFFSET LEGO1 0x100184e0
Init()
// Size 0x90
};
#endif // LEGOLOADCACHESOUNDPRESENTER_H

View File

@ -0,0 +1,10 @@
class LegoLocomotionAnimPresenter : public LegoLoopingAnimPresenter
{
// VTABLE 0x100d9170
// OFFSET LEGO1 0x1006cdd0
LegoLocomotionAnimPresenter();
// OFFSET LEGO1 0x1006d0b0
void Init();
}

View File

@ -0,0 +1,4 @@
class LegoLoopingAnimPresenter : public LegoAnimPresenter
{
}

7
LEGO1/legopathactor.h Normal file
View File

@ -0,0 +1,7 @@
class LegoPathActor : public LegoEntity
{
// OFFSET LEGO1 0x1002d700
LegoPathActor();
// Size 0x154
}

View File

10
LEGO1/legoplantmanager.h Normal file
View File

@ -0,0 +1,10 @@
class LegoPlantManager : public MxCore
{
// OFFSET LEGO1 0x10026220
LegoPlantManager();
// OFFSET LEGO1 0x10026330
void Init();
// Size 0x2c
}

8
LEGO1/legorace.h Normal file
View File

@ -0,0 +1,8 @@
#ifndef LEGORACE_H
#define LEGORACE_H
class LegoRace
{
};
#endif // LEGORACE_H

11
LEGO1/legostate.h Normal file
View File

@ -0,0 +1,11 @@
#ifndef LEGOSTATE_H
#define LEGOSTATE_H
#include "mxcore.h"
class LegoState : public MxCore
{
// LegoState() = delete;
};
#endif // LEGOSTATE_H

View File

@ -0,0 +1,4 @@
class LegoTexturePresenter : public MxMediaPresenter
{
// Size 0x54
}

View File

@ -1,7 +1,9 @@
#ifndef LEGOWORLD_H
#define LEGOWORLD_H
class LegoWorld
#include "legoentity.h"
class LegoWorld : public LegoEntity
{
public:
__declspec(dllexport) LegoWorld();

4
LEGO1/mxaudiopresenter.h Normal file
View File

@ -0,0 +1,4 @@
class MxAudioPresenter : public MxMediaPresenter
{
}

View File

@ -0,0 +1,14 @@
#ifndef RACESTANDS2ENTITY_H
#define RACESTANDS2ENTITY_H
#include "buildingentity.h"
class MxCompositeMediaPresenter
{
// OFFSET ISLE1 0x10073ea0
MxCompositeMediaPresenter();
// Size is 0x50
};
#endif // RACESTANDS2ENTITY_H

8
LEGO1/mxeventpresenter.h Normal file
View File

@ -0,0 +1,8 @@
class MxEventPresenter : public MxMediaPresenter
{
// OFFSET LEGO1 0x100c2b70
MxEventPresenter();
// OFFSET LEGO1 0x100c2da0
Init();
}

5
LEGO1/mxflcpresenter.h Normal file
View File

@ -0,0 +1,5 @@
class MxFlcPresenter : public MxVideoPresenter
{
// OFFSET LEGO1 0x100b3310
MxFlcPresenter();
}

View File

@ -0,0 +1,8 @@
class MxLoopingFlcPresenter : public MxFlcPresenter
{
// OFFSET LEGO1 0x100b4310
MxLoopingFlcPresenter();
// OFFSET LEGO1 0x100b4410
Init();
}

View File

@ -0,0 +1,4 @@
class MxLoopingMIDIPresenter : public MxMidiPresenter
{
// Size 0x58
}

View File

@ -0,0 +1,8 @@
class MxLoopingSmkPresenter : public MxSmkPresenter
{
// OFFSET LEGO1 0x100b48b0
MxLoopingSmkPresenter();
// OFFSET LEGO1 0x100b49b0
Init();
}

4
LEGO1/mxmediapresenter.h Normal file
View File

@ -0,0 +1,4 @@
class MxMediaPresenter : public MxPresenter
{
}

4
LEGO1/mxmidipresenter.h Normal file
View File

@ -0,0 +1,4 @@
class MxMIDIPresenter : public MxMusicPresenter
{
}

5
LEGO1/mxmusicpresenter.h Normal file
View File

@ -0,0 +1,5 @@
class MxMusicPresenter : public MxAudioPresenter
{
// OFFSET LEGO1 0x100c22c0
MxMusicPresenter();
}

10
LEGO1/mxsmkpresenter.h Normal file
View File

@ -0,0 +1,10 @@
class MxSmkPresenter : public MxVideoPresenter
{
// OFFSET LEGO1 0x100b3650
MxSmkPresenter();
// OFFSET LEGO1 0x100b38d0
void __fastcall Init();
// Size 0x720
}

4
LEGO1/mxsoundpresenter.h Normal file
View File

@ -0,0 +1,4 @@
class MxSoundPresenter : public MxAudioPresenter
{
}

9
LEGO1/mxstillpresenter.h Normal file
View File

@ -0,0 +1,9 @@
class MxStillPresenter : public MxVideoPresenter
{
// VTABLE 0x100d7a38
// OFFSET LEGO1 0x10043430
MxStillPresenter();
// Size 0x6c
}

7
LEGO1/mxwavepresenter.h Normal file
View File

@ -0,0 +1,7 @@
class MxWavePresenter : public MxSoundPresenter
{
// OFFSET LEGO1 0x100b1ad0
void Init();
// Size 0x6c
}

9
LEGO1/pizza.h Normal file
View File

@ -0,0 +1,9 @@
class Pizza : public IsleActor
{
// VTABLE 100d7380
// OFFSET LEGO1 0x10037ef0
Pizza();
// Size 0x9c
}

14
LEGO1/pizzeria.h Normal file
View File

@ -0,0 +1,14 @@
#ifndef PIZZERIASTATE_H
#define PIZZERIASTATE_H
#include "isleactor.h"
class Pizzeria : public IsleActor
{
// OFFSET LEGO1 0x100334b0
ActlState();
// size is 0x84
};
#endif // PIZZERIASTATE_H

12
LEGO1/pizzeriastate.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef JETSKIRACE_H
#define JETSKIRACE_H
class PizzeriaState : public LegoState
{
// OFFSET: LEGO1 0x10015aa0
PizzeriaState();
// Size 0xb4
};
#endif // JETSKIRACE_H

10
LEGO1/police.h Normal file
View File

@ -0,0 +1,10 @@
class Police : public LegoWorld
{
// VTABLE 0x100d8a80
// OFFSET LEGO1 0x1005e130
Police();
// Size 0x110
// Radio at 0xf8
}

9
LEGO1/policestate.h Normal file
View File

@ -0,0 +1,9 @@
class PoliceState : public LegoState
{
// VTABLE 0x100d8af0
// OFFSET LEGO1 0x1005e7c0
PoliceState();
// Size 0x10
}

11
LEGO1/racestandsentity.h Normal file
View File

@ -0,0 +1,11 @@
#ifndef RACESTANDSENTITY_H
#define RACESTANDSENTITY_H
#include "buildingentity.h"
class RaceStandsEntity : public BuildingEntity
{
// Size is 0x68
};
#endif // RACESTANDSENTITY_H

11
LEGO1/racestandsentity2.h Normal file
View File

@ -0,0 +1,11 @@
#ifndef RACESTANDS2ENTITY_H
#define RACESTANDS2ENTITY_H
#include "buildingentity.h"
class RaceStandsEntity2 : public BuildingEntity
{
// Size is 0x68
};
#endif // RACESTANDS2ENTITY_H

12
LEGO1/racestate.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef RACESTATE_H
#define RACESTATE_H
#include "legostate.h"
class RaceState : public LegoState
{
// OFFSET: LEGO1 0x10015f30
RaceState();
};
#endif // RACESTATE_H

4
LEGO1/radio.h Normal file
View File

@ -0,0 +1,4 @@
class Radio : public MxCore
{
// VTABLE 0x100d6d10
}

9
LEGO1/radiostate.h Normal file
View File

@ -0,0 +1,9 @@
class RadioState : public LegoState
{
// VTABLE 0x100d6d28
// OFFSET LEGO1 0x1002ce10
RadioState()
// Size 0x30
}

9
LEGO1/score.h Normal file
View File

@ -0,0 +1,9 @@
#include "legoworld.h"
class Score : public LegoWorld
{
// OFFSET LEGO1 0x10001000
Score();
// size 0x104
}

4
LEGO1/scorestate.h Normal file
View File

@ -0,0 +1,4 @@
class ScoreState : public LegoState
{
// Size 0xc
}

4
LEGO1/skateboard.h Normal file
View File

@ -0,0 +1,4 @@
class SkateBoard
{
}