Fix Annotations and LegoAnimActor class structure. (#710)

* Fix size annotations for legoomni
Fix structure and add placeholder annotations for LegoAnimActor and subclasses

* Fix LegoCarRaceActor constructor
Fix function name in LegoRaceCar

* Add size assertions for legoomni and fix sizes

* Various style fixes

* Use other marker so vtable.py doesn't compare

* Revert "Use other marker so vtable.py doesn't compare"

This reverts commit 608985cd73.

* Fix copy/paste error

* Remove stale comment.

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
Nathan M Gilbert
2024-03-22 21:30:58 -04:00
committed by GitHub
parent 96f7219811
commit fca8f74bd8
108 changed files with 778 additions and 82 deletions

View File

@@ -1,11 +1,26 @@
#include "act3shark.h"
DECOMP_SIZE_ASSERT(Act3Shark, 0x1a8)
// STUB: LEGO1 0x1001a1c0
void Act3Shark::VTable0x74(Matrix4& p_transform)
{
// TODO
}
// STUB: LEGO1 0x10042ab0
Act3Shark::Act3Shark()
{
// TODO
}
// STUB: LEGO1 0x10042ce0
MxResult Act3Shark::FUN_10042ce0(void*)
{
// TODO
return SUCCESS;
}
// STUB: LEGO1 0x100430e0
void Act3Shark::ParseAction(char*)
{

View File

@@ -1,5 +1,7 @@
#include "act3state.h"
DECOMP_SIZE_ASSERT(Act3State, 0x0c)
// FUNCTION: LEGO1 0x1000e2f0
MxBool Act3State::VTable0x14()
{

View File

@@ -0,0 +1,9 @@
#include "act2actor.h"
DECOMP_SIZE_ASSERT(Act2Actor, 0x1a8)
// STUB: LEGO1 0x100187e0
Act2Actor::Act2Actor()
{
// TODO
}

View File

@@ -0,0 +1,9 @@
#include "act3actor.h"
DECOMP_SIZE_ASSERT(Act3Actor, 0x178)
// STUB: LEGO1 0x1003fa50
Act3Actor::Act3Actor()
{
m_unk0x1c = 0;
}

View File

@@ -2,7 +2,7 @@
#include "decomp.h"
DECOMP_SIZE_ASSERT(Ambulance, 0x184);
DECOMP_SIZE_ASSERT(Ambulance, 0x184)
// FUNCTION: LEGO1 0x10035ee0
Ambulance::Ambulance()

View File

@@ -8,7 +8,7 @@
#include "legoworld.h"
#include "misc.h"
DECOMP_SIZE_ASSERT(Bike, 0x164);
DECOMP_SIZE_ASSERT(Bike, 0x164)
// FUNCTION: LEGO1 0x10076670
Bike::Bike()

View File

@@ -1,5 +1,7 @@
#include "bumpbouy.h"
DECOMP_SIZE_ASSERT(BumpBouy, 0x174)
// STUB: LEGO1 0x1000fd00
void BumpBouy::ParseAction(char*)
{
@@ -24,6 +26,11 @@ void BumpBouy::VTable0x74(Matrix4& p_transform)
// TODO
}
// STUB: LEGO1 0x10027220
BumpBouy::BumpBouy()
{
}
// STUB: LEGO1 0x100274d0
MxLong BumpBouy::Notify(MxParam& p_param)
{

View File

@@ -1,5 +1,7 @@
#include "doors.h"
DECOMP_SIZE_ASSERT(Doors, 0x1f8)
// STUB: LEGO1 0x10066100
MxS32 Doors::VTable0x94()
{

View File

@@ -2,7 +2,7 @@
#include "decomp.h"
DECOMP_SIZE_ASSERT(DuneBuggy, 0x16c);
DECOMP_SIZE_ASSERT(DuneBuggy, 0x16c)
// FUNCTION: LEGO1 0x10067bb0
DuneBuggy::DuneBuggy()

View File

@@ -1,6 +1,6 @@
#include "jetski.h"
DECOMP_SIZE_ASSERT(Jetski, 0x164);
DECOMP_SIZE_ASSERT(Jetski, 0x164)
// FUNCTION: LEGO1 0x1007e3b0
Jetski::Jetski()

View File

@@ -14,6 +14,8 @@
#include "mxnotificationmanager.h"
#include "mxtransitionmanager.h"
DECOMP_SIZE_ASSERT(JukeBoxEntity, 0x6c)
// FUNCTION: LEGO1 0x10085bc0
JukeBoxEntity::JukeBoxEntity()
{

View File

@@ -1,6 +1,6 @@
#include "motocycle.h"
DECOMP_SIZE_ASSERT(Motocycle, 0x16c);
DECOMP_SIZE_ASSERT(Motocycle, 0x16c)
// FUNCTION: LEGO1 0x100357b0
Motocycle::Motocycle()

View File

@@ -3,7 +3,7 @@
#include "mxmisc.h"
#include "mxticklemanager.h"
DECOMP_SIZE_ASSERT(Pizza, 0x9c);
DECOMP_SIZE_ASSERT(Pizza, 0x9c)
// FUNCTION: LEGO1 0x10037ef0
Pizza::Pizza()

View File

@@ -1,5 +1,7 @@
#include "pizzeria.h"
DECOMP_SIZE_ASSERT(Pizzeria, 0x84)
// STUB: LEGO1 0x100179c0
MxResult Pizzeria::Create(MxDSAction& p_dsAction)
{

View File

@@ -3,7 +3,7 @@
#include "legocontrolmanager.h"
#include "misc.h"
DECOMP_SIZE_ASSERT(RaceCar, 0x164);
DECOMP_SIZE_ASSERT(RaceCar, 0x164)
// FUNCTION: LEGO1 0x10028200
RaceCar::RaceCar()

View File

@@ -10,7 +10,7 @@
#include "mxmisc.h"
#include "mxnotificationmanager.h"
DECOMP_SIZE_ASSERT(Radio, 0x10);
DECOMP_SIZE_ASSERT(Radio, 0x10)
// FUNCTION: LEGO1 0x1002c850
Radio::Radio()

View File

@@ -4,7 +4,7 @@
#include "mxmisc.h"
#include "mxnotificationmanager.h"
DECOMP_SIZE_ASSERT(SkateBoard, 0x168);
DECOMP_SIZE_ASSERT(SkateBoard, 0x168)
// FUNCTION: LEGO1 0x1000fd40
SkateBoard::SkateBoard()

View File

@@ -1,6 +1,6 @@
#include "towtrack.h"
DECOMP_SIZE_ASSERT(TowTrack, 0x180);
DECOMP_SIZE_ASSERT(TowTrack, 0x180)
// FUNCTION: LEGO1 0x1004c720
TowTrack::TowTrack()

View File

@@ -3,6 +3,8 @@
#include "mxautolock.h"
#include "mxomni.h"
DECOMP_SIZE_ASSERT(LegoSoundManager, 0x44)
// FUNCTION: LEGO1 0x100298a0
LegoSoundManager::LegoSoundManager()
{

View File

@@ -3,6 +3,8 @@
#include "mxmisc.h"
#include "mxnotificationmanager.h"
DECOMP_SIZE_ASSERT(BuildingEntity, 0x68)
// FUNCTION: LEGO1 0x10014e20
BuildingEntity::BuildingEntity()
{

View File

@@ -1 +1,3 @@
#include "helicopterstate.h"
DECOMP_SIZE_ASSERT(HelicopterState, 0x0c)

View File

@@ -1,5 +1,7 @@
#include "legocarbuild.h"
DECOMP_SIZE_ASSERT(LegoCarBuild, 0x34c)
// STUB: LEGO1 0x100226d0
LegoCarBuild::LegoCarBuild()
{

View File

@@ -170,7 +170,7 @@ LegoROI* LegoCharacterManager::GetROI(const char* p_key, MxBool p_createEntity)
if (character != NULL) {
if (p_createEntity && character->m_roi->GetEntity() == NULL) {
// TODO: Match
LegoAnimActor* actor = new LegoAnimActor(1);
LegoAnimActor* actor = new LegoAnimActor();
actor->SetROI(character->m_roi, FALSE, FALSE);
actor->FUN_100114e0(0);

View File

@@ -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

View File

@@ -1,5 +1,7 @@
#include "legoobjectfactory.h"
#include "act2actor.h"
#include "act2brick.h"
#include "carrace.h"
#include "decomp.h"
#include "dunebuggy.h"
@@ -56,8 +58,6 @@
#include "score.h"
#include "scorestate.h"
#include "skateboard.h"
// #include "act2actor.h"
#include "act2brick.h"
// #include "act2genactor.h"
#include "act2policestation.h"
#include "act3.h"
@@ -77,6 +77,7 @@
#include "act1state.h"
#include "act3actor.h"
#include "act3shark.h"
#include "animstate.h"
#include "beachhouseentity.h"
#include "bumpbouy.h"
#include "carracestate.h"
@@ -93,10 +94,9 @@
#include "pizzeria.h"
#include "pizzeriastate.h"
#include "policeentity.h"
#include "raceskel.h"
#include "racestandsentity.h"
#include "radiostate.h"
// #include "raceskel.h"
#include "animstate.h"
// TODO: Before HospitalState, add all of the different LegoVehicleBuildState's

View File

@@ -6,7 +6,7 @@
#include "misc/legotexture.h"
#include "tgl/d3drm/impl.h"
DECOMP_SIZE_ASSERT(LegoTextureInfo, 0x10);
DECOMP_SIZE_ASSERT(LegoTextureInfo, 0x10)
// FUNCTION: LEGO1 0x10065bf0
LegoTextureInfo::LegoTextureInfo()

View File

@@ -11,7 +11,7 @@
#include "mxticklemanager.h"
#include "mxvideopresenter.h"
DECOMP_SIZE_ASSERT(MxTransitionManager, 0x900);
DECOMP_SIZE_ASSERT(MxTransitionManager, 0x900)
// GLOBAL: LEGO1 0x100f4378
RECT g_fullScreenRect = {0, 0, 640, 480};

View File

@@ -1,5 +1,7 @@
#include "act2brick.h"
DECOMP_SIZE_ASSERT(Act2Brick, 0x194)
// STUB: LEGO1 0x1007a2b0
Act2Brick::Act2Brick()
{

View File

@@ -1,5 +1,7 @@
#include "act2policestation.h"
DECOMP_SIZE_ASSERT(Act2PoliceStation, 0x68)
// STUB: LEGO1 0x1004e0e0
MxLong Act2PoliceStation::Notify(MxParam& p_param)
{

View File

@@ -3,6 +3,8 @@
#include "legoentity.h"
#include "misc.h"
DECOMP_SIZE_ASSERT(LegoActorPresenter, 0x50)
// FUNCTION: LEGO1 0x10076c30
void LegoActorPresenter::ReadyTickle()
{

View File

@@ -6,7 +6,7 @@
#include "misc.h"
#include "realtime/realtime.h"
DECOMP_SIZE_ASSERT(LegoCameraController, 0xc8);
DECOMP_SIZE_ASSERT(LegoCameraController, 0xc8)
// FUNCTION: LEGO1 0x10011d50
LegoCameraController::LegoCameraController()

View File

@@ -1,5 +1,14 @@
#include "legocarraceactor.h"
#include "mxmisc.h"
#include "mxvariabletable.h"
DECOMP_SIZE_ASSERT(LegoCarRaceActor, 0x1a0)
// GLOBAL: LEGO1 0x100f7af0
// STRING: LEGO1 0x100f7ae4
const char* g_fuel = "FUEL";
// STUB: LEGO1 0x10014130
void LegoCarRaceActor::VTable0x68()
{
@@ -20,6 +29,34 @@ MxS32 LegoCarRaceActor::VTable0x94()
return 0;
}
// FUNCTION: LEGO1 0x10080350
LegoCarRaceActor::LegoCarRaceActor()
{
m_unk0x08 = 1.0f;
m_unk0x70 = 0.0f;
m_unk0x0c = 0;
m_unk0x13c = 0.0f;
m_unk0x68 = 1.0f;
m_unk0x1c = 0;
m_unk0x10 = 0.65f;
m_unk0x14 = 0.03f;
m_unk0x18 = 0.6f;
m_unk0x140 = 0.1f;
m_unk0x150 = -5.0f;
m_unk0x148 = 1;
VariableTable()->SetVariable(g_fuel, "0.8");
}
// STUB: LEGO1 0x10080590
void LegoCarRaceActor::FUN_10080590()
{
}
// STUB: LEGO1 0x10080740
void LegoCarRaceActor::VTable0x1c()
{
}
// STUB: LEGO1 0x10081830
void LegoCarRaceActor::VTable0x6c()
{

View File

@@ -4,7 +4,7 @@
#include "legovideomanager.h"
#include "misc.h"
DECOMP_SIZE_ASSERT(LegoEntityPresenter, 0x50);
DECOMP_SIZE_ASSERT(LegoEntityPresenter, 0x50)
// FUNCTION: LEGO1 0x10053440
LegoEntityPresenter::LegoEntityPresenter()

View File

@@ -1,5 +1,29 @@
#include "legojetski.h"
#include "mxmisc.h"
#include "mxnotificationmanager.h"
DECOMP_SIZE_ASSERT(LegoJetski, 0x1dc)
// FUNCTION: LEGO1 0x100136f0
void LegoJetski::FUN_100136f0(float p_worldSpeed)
{
if (p_worldSpeed < 0) {
LegoCarRaceActor::m_unk0x0c = 2;
m_unk0x13c = 0;
SetWorldSpeed(0);
}
else {
m_unk0x13c = p_worldSpeed;
}
}
// FUNCTION: LEGO1 0x10013820
LegoJetski::LegoJetski()
{
NotificationManager()->Register(this);
}
// STUB: LEGO1 0x10013e70
MxLong LegoJetski::Notify(MxParam& p_param)
{

View File

@@ -1,5 +1,22 @@
#include "legojetskiraceactor.h"
DECOMP_SIZE_ASSERT(LegoJetskiRaceActor, 0x1a8)
// STUB: LEGO1 0x10014220
void LegoJetskiRaceActor::VTable0x1c()
{
// TODO
}
// FUNCTION: LEGO1 0x10080ef0
LegoJetskiRaceActor::LegoJetskiRaceActor()
{
m_unk0x10 = 0.95f;
m_unk0x14 = 0.04f;
m_unk0x18 = 0.5f;
m_unk0x150 = 1.5f;
}
// STUB: LEGO1 0x10081fc0
void LegoJetskiRaceActor::VTable0x6c()
{

View File

@@ -11,8 +11,8 @@
#include "realtime/realtime.h"
#include "roi/legoroi.h"
DECOMP_SIZE_ASSERT(LegoMouseController, 0x20);
DECOMP_SIZE_ASSERT(LegoPointOfViewController, 0x38);
DECOMP_SIZE_ASSERT(LegoMouseController, 0x20)
DECOMP_SIZE_ASSERT(LegoPointOfViewController, 0x38)
// GLOBAL: LEGO1 0x100f75ac
MxBool g_unk0x100f75ac = FALSE;

View File

@@ -29,6 +29,8 @@
#include <io.h>
DECOMP_SIZE_ASSERT(LegoWorldPresenter, 0x54)
// GLOBAL: LEGO1 0x100f75d4
MxS32 g_legoWorldPresenterQuality = 1;

View File

@@ -1 +1,3 @@
#include "gasstationentity.h"
DECOMP_SIZE_ASSERT(GasStationEntity, 0x68)

View File

@@ -1,6 +1,6 @@
#include "gasstationstate.h"
DECOMP_SIZE_ASSERT(GasStationState, 0x24);
DECOMP_SIZE_ASSERT(GasStationState, 0x24)
// FUNCTION: LEGO1 0x10005eb0
GasStationState::GasStationState()

View File

@@ -1,6 +1,6 @@
#include "ambulancemissionstate.h"
DECOMP_SIZE_ASSERT(AmbulanceMissionState, 0x24);
DECOMP_SIZE_ASSERT(AmbulanceMissionState, 0x24)
// FUNCTION: LEGO1 0x100373a0
AmbulanceMissionState::AmbulanceMissionState()

View File

@@ -1 +1,3 @@
#include "hospitalentity.h"
DECOMP_SIZE_ASSERT(HospitalEntity, 0x68)

View File

@@ -1 +1,3 @@
#include "infocenterentity.h"
DECOMP_SIZE_ASSERT(InfoCenterEntity, 0x68)

View File

@@ -3,7 +3,7 @@
#include "infocenter.h"
#include "infomain_actions.h"
DECOMP_SIZE_ASSERT(InfocenterState, 0x94);
DECOMP_SIZE_ASSERT(InfocenterState, 0x94)
// GLOBAL: LEGO1 0x100f76a8
InfomainScript::Script g_exitDialogueAct1[14] = {

View File

@@ -1,6 +1,6 @@
#include "scorestate.h"
DECOMP_SIZE_ASSERT(ScoreState, 0x0c);
DECOMP_SIZE_ASSERT(ScoreState, 0x0c)
// FUNCTION: LEGO1 0x1000de20
MxBool ScoreState::VTable0x14()

View File

@@ -1 +1,3 @@
#include "beachhouseentity.h"
DECOMP_SIZE_ASSERT(BeachHouseEntity, 0x68)

View File

@@ -1,5 +1,7 @@
#include "jukeboxstate.h"
DECOMP_SIZE_ASSERT(JukeBoxState, 0x10)
// FUNCTION: LEGO1 0x1000f300
MxBool JukeBoxState::VTable0x14()
{

View File

@@ -6,6 +6,8 @@
#include "mxmisc.h"
#include "mxtimer.h"
DECOMP_SIZE_ASSERT(RadioState, 0x30)
// GLOBAL: LEGO1 0x100f3218
JukeboxScript::Script g_unk0x100f3218[6] = {
JukeboxScript::c_sns002ra_Audio,

View File

@@ -2,4 +2,4 @@
#include "decomp.h"
DECOMP_SIZE_ASSERT(LegoEventNotificationParam, 0x20);
DECOMP_SIZE_ASSERT(LegoEventNotificationParam, 0x20)

View File

@@ -1,9 +1,27 @@
#include "legoanimactor.h"
// TODO: This might not be the actual constructor of this class,
// it only exists temporarily to match other code
// STUB: LEGO1 0x1002a500
LegoAnimActor::LegoAnimActor(undefined4)
DECOMP_SIZE_ASSERT(LegoAnimActor, 0x174)
// STUB: LEGO1 0x1001c1f0
MxResult LegoAnimActor::FUN_1001c1f0(float& p_out)
{
// TODO
return SUCCESS;
}
// STUB: LEGO1 0x1001c360
MxResult LegoAnimActor::FUN_1001c360(float, undefined4)
{
return FAILURE;
}
// STUB: LEGO1 0x1001c450
MxResult LegoAnimActor::FUN_1001c450(undefined4, undefined4, undefined4, undefined4)
{
return SUCCESS;
}
// STUB: LEGO1 0x1001c800
void LegoAnimActor::FUN_1001c800()
{
}

View File

@@ -0,0 +1,16 @@
#include "legoextraactor.h"
DECOMP_SIZE_ASSERT(LegoExtraActor, 0x1dc)
// STUB: LEGO1 0x1002a500
LegoExtraActor::LegoExtraActor()
{
}
// STUB: LEGO1 0x1002aae0
MxResult LegoExtraActor::FUN_1002aae0()
{
// TODO
VTable0x9c();
return SUCCESS;
}

View File

@@ -1,5 +1,7 @@
#include "legopathcontroller.h"
DECOMP_SIZE_ASSERT(LegoPathController, 0x40)
// STUB: LEGO1 0x10044f40
LegoPathController::LegoPathController()
{

View File

@@ -4,7 +4,7 @@
#include "misc.h"
#include "mxautolock.h"
DECOMP_SIZE_ASSERT(LegoPathPresenter, 0x54);
DECOMP_SIZE_ASSERT(LegoPathPresenter, 0x54)
// FUNCTION: LEGO1 0x100448d0
LegoPathPresenter::LegoPathPresenter()

View File

@@ -1,5 +1,7 @@
#include "pizzeriastate.h"
DECOMP_SIZE_ASSERT(PizzeriaState, 0x58)
// STUB: LEGO1 0x10017af0
PizzeriaState::PizzeriaState()
{

View File

@@ -1 +1,3 @@
#include "policeentity.h"
DECOMP_SIZE_ASSERT(PoliceEntity, 0x68)

View File

@@ -1,6 +1,6 @@
#include "carrace.h"
DECOMP_SIZE_ASSERT(CarRace, 0x154);
DECOMP_SIZE_ASSERT(CarRace, 0x154)
// FUNCTION: LEGO1 0x10016a90
CarRace::CarRace()

View File

@@ -1,5 +1,7 @@
#include "jetskirace.h"
DECOMP_SIZE_ASSERT(JetskiRace, 0x144)
// STUB: LEGO1 0x100162c0
MxResult JetskiRace::Create(MxDSAction& p_dsAction)
{

View File

@@ -1,11 +1,20 @@
#include "legoraceactor.h"
DECOMP_SIZE_ASSERT(LegoRaceActor, 0x180)
// STUB: LEGO1 0x10014190
void LegoRaceActor::VTable0x74(Matrix4& p_transform)
{
// TODO
}
// FUNCTION: LEGO1 0x100145d0
LegoRaceActor::LegoRaceActor()
{
m_unk0x70 = 0;
m_unk0x08 = 0;
}
// STUB: LEGO1 0x10014ca0
void LegoRaceActor::ParseAction(char*)
{

View File

@@ -1,5 +1,49 @@
#include "legoracecar.h"
#include "mxmisc.h"
#include "mxnotificationmanager.h"
DECOMP_SIZE_ASSERT(LegoRaceCar, 0x200)
// FUNCTION: LEGO1 0x10012950
LegoRaceCar::LegoRaceCar()
{
m_unk0x54 = 0;
m_unk0x70 = 0;
m_unk0x74 = 0;
m_unk0x5c.Clear();
m_unk0x58 = 0;
m_unk0x78 = 0;
m_unk0x7c = 0;
NotificationManager()->Register(this);
}
// FUNCTION: LEGO1 0x10012ea0
void LegoRaceCar::FUN_10012ea0(float p_worldSpeed)
{
if (p_worldSpeed < 0) {
LegoCarRaceActor::m_unk0x0c = 2;
m_unk0x13c = 0;
SetWorldSpeed(0);
}
else {
m_unk0x13c = p_worldSpeed;
}
}
// STUB: LEGO1 0x10012ff0
void LegoRaceCar::FUN_10012ff0(float)
{
// TODO
}
// STUB: LEGO1 0x10013130
MxBool LegoRaceCar::FUN_10013130(float)
{
// TODO
return TRUE;
}
// STUB: LEGO1 0x10014280
MxLong LegoRaceCar::Notify(MxParam& p_param)
{

View File

@@ -0,0 +1,21 @@
#include "legoracemap.h"
#include "legocontrolmanager.h"
#include "misc.h"
DECOMP_SIZE_ASSERT(LegoRaceMap, 0x1b4)
// FUNCTION: LEGO1 0x1005d0d0
LegoRaceMap::LegoRaceMap()
{
m_unk0x08 = FALSE;
m_unk0x0c = NULL;
m_unk0x10 = 0;
ControlManager()->Register(this);
}
// FUNCTION: LEGO1 0x1005d4b0
void LegoRaceMap::FUN_1005d4b0()
{
// TODO
}

View File

@@ -0,0 +1,9 @@
#include "raceskel.h"
DECOMP_SIZE_ASSERT(RaceSkel, 0x178)
// STUB: LEGO1 0x100719b0
RaceSkel::RaceSkel()
{
// TODO
}

View File

@@ -1 +1,3 @@
#include "racestandsentity.h"
DECOMP_SIZE_ASSERT(RaceStandsEntity, 0x68)

View File

@@ -1,5 +1,7 @@
#include "legounknown100d7c88.h"
DECOMP_SIZE_ASSERT(LegoUnknown100d7c88, 0x18)
// FUNCTION: LEGO1 0x10044e50
LegoUnknown100d7c88::~LegoUnknown100d7c88()
{

View File

@@ -13,7 +13,7 @@
#include "mxvideomanager.h"
#include "realtime/realtime.h"
DECOMP_SIZE_ASSERT(LegoAnimPresenter, 0xc0)
DECOMP_SIZE_ASSERT(LegoAnimPresenter, 0xbc)
// FUNCTION: LEGO1 0x10068420
LegoAnimPresenter::LegoAnimPresenter()

View File

@@ -1,5 +1,7 @@
#include "legocarbuildanimpresenter.h"
DECOMP_SIZE_ASSERT(LegoCarBuildAnimPresenter, 0x150)
// STUB: LEGO1 0x10078400
LegoCarBuildAnimPresenter::LegoCarBuildAnimPresenter()
{

View File

@@ -1,5 +1,7 @@
#include "legoloopinganimpresenter.h"
DECOMP_SIZE_ASSERT(LegoLoopingAnimPresenter, 0xc0)
// STUB: LEGO1 0x1006caa0
void LegoLoopingAnimPresenter::StreamingTickle()
{

View File

@@ -16,6 +16,8 @@
#include "realtime/realtime.h"
#include "roi/legoroi.h"
DECOMP_SIZE_ASSERT(LegoModelPresenter, 0x6c)
// GLOBAL: LEGO1 0x100f7ae0
MxS32 g_modelPresenterConfig = 1;

View File

@@ -1,6 +1,6 @@
#include "legophonemepresenter.h"
DECOMP_SIZE_ASSERT(LegoPhonemePresenter, 0x88);
DECOMP_SIZE_ASSERT(LegoPhonemePresenter, 0x88)
// FUNCTION: LEGO1 0x1004e180
LegoPhonemePresenter::LegoPhonemePresenter()

View File

@@ -11,9 +11,9 @@
#include "tgl/d3drm/impl.h"
#include "viewmanager/viewroi.h"
DECOMP_SIZE_ASSERT(LegoVideoManager, 0x590);
DECOMP_SIZE_ASSERT(MxStopWatch, 0x18);
DECOMP_SIZE_ASSERT(MxFrequencyMeter, 0x20);
DECOMP_SIZE_ASSERT(LegoVideoManager, 0x590)
DECOMP_SIZE_ASSERT(MxStopWatch, 0x18)
DECOMP_SIZE_ASSERT(MxFrequencyMeter, 0x20)
// FUNCTION: LEGO1 0x1007aa20
LegoVideoManager::LegoVideoManager()

View File

@@ -8,6 +8,8 @@
#include "mxnotificationmanager.h"
#include "mxticklemanager.h"
DECOMP_SIZE_ASSERT(GasStation, 0x128)
// GLOBAL: LEGO1 0x100f0160
undefined4 g_unk0x100f0160 = 3;

View File

@@ -32,7 +32,7 @@
#include <vec.h>
DECOMP_SIZE_ASSERT(Isle, 0x140);
DECOMP_SIZE_ASSERT(Isle, 0x140)
// GLOBAL: LEGO1 0x100f1198
undefined4 g_unk0x100f1198 = 0x7f;

View File

@@ -1,5 +1,7 @@
#include "legoact2.h"
DECOMP_SIZE_ASSERT(LegoAct2, 0x1154)
// FUNCTION: LEGO1 0x1004fe10
MxBool LegoAct2::VTable0x5c()
{