Fix LegoRaceCar

This commit is contained in:
disinvite 2024-06-10 12:33:44 -04:00
parent f4d17f32b3
commit c35154c9bc
2 changed files with 49 additions and 43 deletions

View File

@ -4,30 +4,30 @@
#include "legocarraceactor.h" #include "legocarraceactor.h"
#include "legoracemap.h" #include "legoracemap.h"
/* // VTABLE: LEGO1 0x100d58a0 LegoRaceActor
VTABLE: LEGO1 0x100d58a0 LegoRaceActor // VTABLE: LEGO1 0x100d58a8 LegoAnimActor
VTABLE: LEGO1 0x100d58a8 LegoAnimActor // VTABLE: LEGO1 0x100d58b8 LegoPathActor
VTABLE: LEGO1 0x100d58b8 LegoPathActor // VTABLE: LEGO1 0x100d5984 LegoRaceMap
VTABLE: LEGO1 0x100d5894 LegoRaceMap // VTABLE: LEGO1 0x100d5988 LegoCarRaceActor
VTABLE: LEGO1 0x100d5898 LegoCarRaceActor
*/
// SIZE 0x200 // SIZE 0x200
class LegoRaceCar : public LegoCarRaceActor, public LegoRaceMap { class LegoRaceCar : public LegoCarRaceActor, public LegoRaceMap {
public: public:
LegoRaceCar(); LegoRaceCar();
~LegoRaceCar() override;
MxLong Notify(MxParam& p_param) override; // vtable+0x04 MxLong Notify(MxParam& p_param) override; // vtable+0x04
// FUNCTION: LEGO1 0x10014290 // FUNCTION: LEGO1 0x100142a0
inline const char* ClassName() const override // vtable+0x0c inline const char* ClassName() const override // vtable+0x0c
{ {
// STRING: LEGO1 0x100f0548 // STRING: LEGO1 0x100f0548
return "LegoRaceCar"; return "LegoRaceCar";
} }
// FUNCTION: LEGO1 0x100142b0 // FUNCTION: LEGO1 0x100142c0
inline MxBool IsA(const char* p_name) const override // vtable+0x10 inline MxBool IsA(const char* p_name) const override // vtable+0x10
{ {
return !strcmp(p_name, LegoCarRaceActor::ClassName()) || LegoCarRaceActor::IsA(p_name); return !strcmp(p_name, LegoRaceCar::ClassName()) || LegoCarRaceActor::IsA(p_name);
} }
void ParseAction(char*) override; // vtable+0x20 void ParseAction(char*) override; // vtable+0x20
@ -50,7 +50,7 @@ class LegoRaceCar : public LegoCarRaceActor, public LegoRaceMap {
virtual void FUN_10012ff0(float); virtual void FUN_10012ff0(float);
virtual MxBool FUN_10013130(float); virtual MxBool FUN_10013130(float);
// SYNTHETIC: LEGO1 0x10014230 // SYNTHETIC: LEGO1 0x10014240
// LegoRaceCar::`scalar deleting destructor' // LegoRaceCar::`scalar deleting destructor'
private: private:

View File

@ -18,6 +18,25 @@ LegoRaceCar::LegoRaceCar()
NotificationManager()->Register(this); NotificationManager()->Register(this);
} }
// STUB: LEGO1 0x10012c80
LegoRaceCar::~LegoRaceCar()
{
// TODO
}
// STUB: LEGO1 0x10012d90
MxLong LegoRaceCar::Notify(MxParam& p_param)
{
// TODO
return 0;
}
// STUB: LEGO1 0x10012e60
void LegoRaceCar::SetWorldSpeed(MxFloat p_worldSpeed)
{
// TODO
}
// FUNCTION: LEGO1 0x10012ea0 // FUNCTION: LEGO1 0x10012ea0
void LegoRaceCar::FUN_10012ea0(float p_worldSpeed) void LegoRaceCar::FUN_10012ea0(float p_worldSpeed)
{ {
@ -31,6 +50,12 @@ void LegoRaceCar::FUN_10012ea0(float p_worldSpeed)
} }
} }
// STUB: LEGO1 0x10012ef0
void LegoRaceCar::ParseAction(char*)
{
// TODO
}
// STUB: LEGO1 0x10012ff0 // STUB: LEGO1 0x10012ff0
void LegoRaceCar::FUN_10012ff0(float) void LegoRaceCar::FUN_10012ff0(float)
{ {
@ -44,26 +69,27 @@ MxBool LegoRaceCar::FUN_10013130(float)
return TRUE; return TRUE;
} }
// STUB: LEGO1 0x10014280 // STUB: LEGO1 0x100131f0
MxLong LegoRaceCar::Notify(MxParam& p_param) void LegoRaceCar::VTable0x70(float p_float)
{
// TODO
}
// STUB: LEGO1 0x100133c0
MxResult LegoRaceCar::VTable0x94(LegoPathActor* p_actor, MxBool p_bool)
{ {
// TODO // TODO
return 0; return 0;
} }
// STUB: LEGO1 0x100144d0 // STUB: LEGO1 0x10013600
void LegoRaceCar::ParseAction(char*) MxResult LegoRaceCar::VTable0x9c()
{ {
// TODO // TODO
return SUCCESS;
} }
// STUB: LEGO1 0x100144e0 // STUB: LEGO1 0x10014500
void LegoRaceCar::SetWorldSpeed(MxFloat p_worldSpeed)
{
// TODO
}
// STUB: LEGO1 0x100144f0
MxU32 LegoRaceCar::VTable0x6c( MxU32 LegoRaceCar::VTable0x6c(
LegoPathBoundary* p_boundary, LegoPathBoundary* p_boundary,
Vector3& p_v1, Vector3& p_v1,
@ -77,28 +103,8 @@ MxU32 LegoRaceCar::VTable0x6c(
return 0; return 0;
} }
// STUB: LEGO1 0x10014530 // STUB: LEGO1 0x10014560
void LegoRaceCar::VTable0x70(float p_float)
{
// TODO
}
// STUB: LEGO1 0x10014540
MxResult LegoRaceCar::VTable0x94(LegoPathActor* p_actor, MxBool p_bool)
{
// TODO
return 0;
}
// STUB: LEGO1 0x10014550
void LegoRaceCar::SwitchBoundary(LegoPathBoundary*& p_boundary, LegoUnknown100db7f4*& p_edge, float& p_unk0xe4) void LegoRaceCar::SwitchBoundary(LegoPathBoundary*& p_boundary, LegoUnknown100db7f4*& p_edge, float& p_unk0xe4)
{ {
// TODO // TODO
} }
// STUB: LEGO1 0x10014580
MxResult LegoRaceCar::VTable0x9c()
{
// TODO
return SUCCESS;
}