mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-28 18:51:16 +00:00
Vtable progress
This commit is contained in:
parent
d034f02df1
commit
5225dad03a
@ -63,13 +63,16 @@ add_library(lego1 SHARED
|
||||
LEGO1/lego/legoomni/src/entity/legoactorpresenter.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoanimactor.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legocameracontroller.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legocarraceactor.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoentity.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoentitypresenter.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legojetski.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legojetskiraceactor.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legonavcontroller.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legopathactor.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legopovcontroller.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legorace.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoraceactor.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoworld.cpp
|
||||
LEGO1/lego/legoomni/src/entity/legoworldpresenter.cpp
|
||||
LEGO1/lego/legoomni/src/gasstation/gasstation.cpp
|
||||
|
||||
@ -26,6 +26,8 @@ class Act2Brick : public LegoPathActor {
|
||||
return !strcmp(p_name, Act2Brick::ClassName()) || LegoEntity::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxS32 VTable0x94() override; // vtable+0x94
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1007a450
|
||||
// Act2Brick::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -7,12 +7,23 @@
|
||||
class Act3Shark : public LegoAnimActor {
|
||||
public:
|
||||
// FUNCTION: LEGO1 0x100430c0
|
||||
inline virtual const char* ClassName() const override
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
// STRING: LEGO1 0x100f03a0
|
||||
return "Act3Shark";
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1001a130
|
||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||
{
|
||||
return !strcmp(p_name, Act3Shark::ClassName()) || LegoAnimActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void ParseAction(char*) override; // vtable+0x20
|
||||
virtual void SetWorldSpeed(MxFloat p_worldSpeed) override; // vtable+0x30
|
||||
virtual void VTable0x70(float p_float); // vtable+0x70
|
||||
virtual void VTable0x74(Matrix4& p_transform); // vtable+0x74
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10043020
|
||||
// Act3Shark::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -22,6 +22,8 @@ class AmbulanceMissionState : public LegoState {
|
||||
return !strcmp(p_name, AmbulanceMissionState::ClassName()) || LegoState::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult VTable0x1c(LegoFileStream* p_legoFileStream); // vtable+0x1c
|
||||
|
||||
inline MxU16 GetColor(MxU8 p_id)
|
||||
{
|
||||
switch (p_id) {
|
||||
|
||||
@ -7,6 +7,8 @@
|
||||
// VTABLE: LEGO1 0x100d6790
|
||||
class BumpBouy : public LegoAnimActor {
|
||||
public:
|
||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||
|
||||
// FUNCTION: LEGO1 0x100274e0
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
@ -20,6 +22,11 @@ class BumpBouy : public LegoAnimActor {
|
||||
return !strcmp(p_name, BumpBouy::ClassName()) || LegoAnimActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void ParseAction(char*) override; // vtable+0x20
|
||||
virtual void SetWorldSpeed(MxFloat p_worldSpeed) override; // vtable+0x30
|
||||
virtual void VTable0x70(float p_float); // vtable+0x70
|
||||
virtual void VTable0x74(Matrix4& p_transform); // vtable+0x74
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10027490
|
||||
// BumpBouy::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -29,6 +29,12 @@ class GasStation : public LegoWorld {
|
||||
return !strcmp(p_name, GasStation::ClassName()) || LegoWorld::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
|
||||
virtual void VTable0x50() override; // vtable+0x50
|
||||
virtual MxBool VTable0x5c() override; // vtable+0x5c
|
||||
virtual MxBool VTable0x64() override; // vtable+0x64
|
||||
virtual void VTable0x68(MxBool p_add) override; // vtable+0x68
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100048a0
|
||||
// GasStation::`scalar deleting destructor'
|
||||
|
||||
|
||||
@ -25,6 +25,10 @@ class HistoryBook : public LegoWorld {
|
||||
return !strcmp(p_name, HistoryBook::ClassName()) || LegoWorld::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
|
||||
virtual void VTable0x50(); // vtable+0x50
|
||||
virtual MxBool VTable0x64(); // vtable+0x64
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100824b0
|
||||
// HistoryBook::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -23,6 +23,8 @@ class HospitalState : public LegoState {
|
||||
return !strcmp(p_name, HospitalState::ClassName()) || LegoState::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult VTable0x1c(LegoFileStream* p_legoFileStream); // vtable+0x1c
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100764c0
|
||||
// HospitalState::`scalar deleting destructor'
|
||||
|
||||
|
||||
@ -6,6 +6,8 @@
|
||||
// VTABLE: LEGO1 0x100d5178
|
||||
class IsleActor : public LegoActor {
|
||||
public:
|
||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||
|
||||
// FUNCTION: LEGO1 0x1000e660
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
@ -18,6 +20,8 @@ class IsleActor : public LegoActor {
|
||||
{
|
||||
return !strcmp(p_name, IsleActor::ClassName()) || LegoActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000e940
|
||||
|
||||
@ -17,6 +17,8 @@ class IslePathActor : public LegoPathActor {
|
||||
// FUNCTION: LEGO1 0x10002e10
|
||||
inline virtual ~IslePathActor() override { IslePathActor::Destroy(TRUE); } // vtable+0x0
|
||||
|
||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||
|
||||
// FUNCTION: LEGO1 0x10002ea0
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
|
||||
#include "decomp.h"
|
||||
#include "islepathactor.h"
|
||||
#include "mxtype17notificationparam.h"
|
||||
|
||||
// VTABLE: LEGO1 0x100d9ec8
|
||||
// SIZE 0x164
|
||||
@ -23,6 +24,12 @@ class Jetski : public IslePathActor {
|
||||
return !strcmp(p_name, Jetski::ClassName()) || IslePathActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
|
||||
virtual void VTable0x70(float p_float); // vtable+0x70
|
||||
virtual MxU32 VTable0xcc() override; // vtable+0xcc
|
||||
virtual MxU32 VTable0xd4(MxType17NotificationParam&) override; // vtable+0xd4
|
||||
virtual void VTable0xe4() override; // vtable+0xe4
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1007e5c0
|
||||
// Jetski::`scalar deleting destructor'
|
||||
|
||||
|
||||
@ -10,6 +10,8 @@ class JukeBoxEntity : public LegoEntity {
|
||||
JukeBoxEntity();
|
||||
virtual ~JukeBoxEntity() override; // vtable+0x0
|
||||
|
||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||
|
||||
// FUNCTION: LEGO1 0x10085cc0
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
|
||||
@ -24,6 +24,9 @@ class LegoActor : public LegoEntity {
|
||||
return !strcmp(p_name, LegoActor::ClassName()) || LegoEntity::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void ParseAction(char*) override; // vtable+0x20
|
||||
virtual void SetROI(LegoROI* p_roi, MxBool p_bool1, MxBool p_bool2) override; // vtable+0x24
|
||||
|
||||
// FUNCTION: LEGO1 0x10002cc0
|
||||
virtual MxFloat VTable0x50() { return m_unk0x68; } // vtable+0x50
|
||||
// FUNCTION: LEGO1 0x10002cd0
|
||||
|
||||
@ -19,6 +19,14 @@ class LegoCarRaceActor : public LegoRaceActor {
|
||||
return !strcmp(p_name, LegoCarRaceActor::ClassName()) || LegoRaceActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void VTable0x68() override; // vtable+0x68
|
||||
virtual void VTable0x6c() override; // vtable+0x6c
|
||||
virtual void VTable0x70(float p_float) override; // vtable+0x70
|
||||
virtual MxS32 VTable0x90() override; // vtable+0x90
|
||||
virtual MxS32 VTable0x94() override; // vtable+0x94
|
||||
virtual void VTable0x98() override; // vtable+0x98
|
||||
virtual void VTable0x9c() override; // vtable+0x9c
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10081610
|
||||
// LegoCarRaceActor::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -38,6 +38,9 @@ class LegoInputManager : public MxPresenter {
|
||||
|
||||
virtual MxResult Tickle() override; // vtable+0x8
|
||||
|
||||
// FUNCTION: LEGO1 0x1005b8c0
|
||||
virtual MxResult PutData() { return SUCCESS; }; // vtable+0x4c
|
||||
|
||||
MxResult Create(HWND p_hwnd);
|
||||
void Destroy();
|
||||
void CreateAndAcquireKeyboard(HWND p_hwnd);
|
||||
|
||||
@ -19,6 +19,11 @@ class LegoJetskiRaceActor : public LegoCarRaceActor {
|
||||
return !strcmp(p_name, LegoJetskiRaceActor::ClassName()) || LegoCarRaceActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void VTable0x6c() override; // vtable+0x6c
|
||||
virtual void VTable0x70(float p_float) override; // vtable+0x70
|
||||
virtual void VTable0x98() override; // vtable+0x98
|
||||
virtual void VTable0x9c() override; // vtable+0x9c
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10081d40
|
||||
// LegoJetskiRaceActor::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -37,7 +37,8 @@ class LegoNavController : public MxCore {
|
||||
);
|
||||
|
||||
LegoNavController();
|
||||
virtual ~LegoNavController() override; // vtable+0x0
|
||||
virtual ~LegoNavController() override; // vtable+0x0
|
||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||
|
||||
// FUNCTION: LEGO1 0x10054b80
|
||||
inline const char* ClassName() const override // vtable+0xc
|
||||
|
||||
@ -25,6 +25,7 @@ class LegoPathActor : public LegoActor {
|
||||
return !strcmp(p_name, LegoPathActor::ClassName()) || LegoActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void ParseAction(char*) override; // vtable+0x20
|
||||
virtual void VTable0x68(); // vtable+0x68
|
||||
virtual void VTable0x6c(); // vtable+0x6c
|
||||
virtual void VTable0x70(float p_float); // vtable+0x70
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#define LEGORACEACTOR_H
|
||||
|
||||
#include "legoanimactor.h"
|
||||
#include "realtime/matrix.h"
|
||||
|
||||
// VTABLE: LEGO1 0x100d5b88
|
||||
class LegoRaceActor : public LegoAnimActor {
|
||||
@ -19,6 +20,14 @@ class LegoRaceActor : public LegoAnimActor {
|
||||
return !strcmp(p_name, LegoRaceActor::ClassName()) || LegoAnimActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual void ParseAction(char*) override; // vtable+0x20
|
||||
virtual void SetWorldSpeed(MxFloat p_worldSpeed) override; // vtable+0x30
|
||||
virtual void VTable0x68() override; // vtable+0x68
|
||||
virtual void VTable0x70(float p_float) override; // vtable+0x70
|
||||
virtual void VTable0x74(Matrix4& p_transform) override; // vtable+0x74
|
||||
virtual MxS32 VTable0x90() override; // vtable+0x90
|
||||
virtual MxS32 VTable0x94() override; // vtable+0x94
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10014ab0
|
||||
// LegoRaceActor::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -32,7 +32,7 @@ class LegoVideoManager : public MxVideoManager {
|
||||
virtual MxResult RealizePalette(MxPalette*) override; // vtable+0x30
|
||||
virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height) override; // vtable+0x34
|
||||
virtual void VTable0x38(undefined4, undefined4); // vtable+0x38
|
||||
// FUNCTION: LGEO1 0x1007ab10
|
||||
// FUNCTION: LEGO1 0x1007ab10
|
||||
virtual LegoUnknown100d9d00* VTable0x3c() { return m_unk0x100d9d00; } // vtable+0x3c
|
||||
|
||||
void SetSkyColor(float p_red, float p_green, float p_blue);
|
||||
|
||||
@ -15,21 +15,23 @@ class Pizza : public IsleActor {
|
||||
Pizza();
|
||||
virtual ~Pizza() override;
|
||||
|
||||
virtual MxResult Tickle() override; // vtable+08
|
||||
virtual MxResult Tickle() override; // vtable+0x8
|
||||
|
||||
// FUNCTION: LEGO1 0x10037f90
|
||||
inline const char* ClassName() const // vtable+0c
|
||||
inline const char* ClassName() const // vtable+0xc
|
||||
{
|
||||
// STRING: LEGO1 0x100f038c
|
||||
return "Pizza";
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10037fa0
|
||||
inline MxBool IsA(const char* p_name) const override // vtable+10
|
||||
inline MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||
{
|
||||
return !strcmp(p_name, Pizza::ClassName()) || IsleActor::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction); // vtable+0x18
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100380e0
|
||||
// Pizza::`scalar deleting destructor'
|
||||
|
||||
|
||||
@ -6,6 +6,19 @@
|
||||
// VTABLE: LEGO1 0x100d48a8
|
||||
// SIZE 0x68
|
||||
class RaceStandsEntity : public BuildingEntity {
|
||||
// FUNCTION: LEGO1 0x1000efa0
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
// STRING: LEGO1 0x100f0300
|
||||
return "RaceStandsEntity";
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1000efb0
|
||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||
{
|
||||
return !strcmp(p_name, RaceStandsEntity::ClassName()) || BuildingEntity::IsA(p_name);
|
||||
}
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000f9e0
|
||||
// RaceStandsEntity::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
@ -12,6 +12,13 @@ Act2Brick::~Act2Brick()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007a750
|
||||
MxS32 Act2Brick::VTable0x94()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007a7f0
|
||||
MxResult Act2Brick::Tickle()
|
||||
{
|
||||
|
||||
@ -1 +1,25 @@
|
||||
#include "act3shark.h"
|
||||
|
||||
// STUB: LEGO1 0x1001a1c0
|
||||
void Act3Shark::VTable0x74(Matrix4& p_transform)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100430e0
|
||||
void Act3Shark::ParseAction(char*)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100430f0
|
||||
void Act3Shark::SetWorldSpeed(MxFloat p_worldSpeed)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10043100
|
||||
void Act3Shark::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
@ -9,3 +9,36 @@ Jetski::Jetski()
|
||||
this->m_unk0x150 = 2.0;
|
||||
this->m_unk0x148 = 1;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007e630
|
||||
MxResult Jetski::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
// TODO
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007e680
|
||||
void Jetski::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007e6f0
|
||||
void Jetski::VTable0xe4()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007e750
|
||||
MxU32 Jetski::VTable0xcc()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007e8e0
|
||||
MxU32 Jetski::VTable0xd4(MxType17NotificationParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -17,3 +17,15 @@ LegoActor::~LegoActor()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002d390
|
||||
void LegoActor::ParseAction(char*)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002d670
|
||||
void LegoActor::SetROI(LegoROI* p_roi, MxBool p_bool1, MxBool p_bool2)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
45
LEGO1/lego/legoomni/src/entity/legocarraceactor.cpp
Normal file
45
LEGO1/lego/legoomni/src/entity/legocarraceactor.cpp
Normal file
@ -0,0 +1,45 @@
|
||||
#include "legocarraceactor.h"
|
||||
|
||||
// STUB: LEGO1 0x10014130
|
||||
void LegoCarRaceActor::VTable0x68()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100141a0
|
||||
MxS32 LegoCarRaceActor::VTable0x90()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1005d650
|
||||
MxS32 LegoCarRaceActor::VTable0x94()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10081830
|
||||
void LegoCarRaceActor::VTable0x6c()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10081d10
|
||||
void LegoCarRaceActor::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10081d20
|
||||
void LegoCarRaceActor::VTable0x98()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10081d30
|
||||
void LegoCarRaceActor::VTable0x9c()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
25
LEGO1/lego/legoomni/src/entity/legojetskiraceactor.cpp
Normal file
25
LEGO1/lego/legoomni/src/entity/legojetskiraceactor.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
#include "legojetskiraceactor.h"
|
||||
|
||||
// STUB: LEGO1 0x10081fc0
|
||||
void LegoJetskiRaceActor::VTable0x6c()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100822c0
|
||||
void LegoJetskiRaceActor::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100822d0
|
||||
void LegoJetskiRaceActor::VTable0x98()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100822e0
|
||||
void LegoJetskiRaceActor::VTable0x9c()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
@ -222,3 +222,10 @@ float LegoNavController::CalculateNewVel(float p_targetVel, float p_currentVel,
|
||||
|
||||
return newVel;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10055a60
|
||||
MxLong LegoNavController::Notify(MxParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -68,6 +68,12 @@ void LegoPathActor::VTable0x68()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002f020
|
||||
void LegoPathActor::ParseAction(char*)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002f1b0
|
||||
void LegoPathActor::VTable0x9c()
|
||||
{
|
||||
|
||||
45
LEGO1/lego/legoomni/src/entity/legoraceactor.cpp
Normal file
45
LEGO1/lego/legoomni/src/entity/legoraceactor.cpp
Normal file
@ -0,0 +1,45 @@
|
||||
#include "legoraceactor.h"
|
||||
|
||||
// STUB: LEGO1 0x10014190
|
||||
void LegoRaceActor::VTable0x74(Matrix4& p_transform)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014ca0
|
||||
void LegoRaceActor::ParseAction(char*)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014cb0
|
||||
void LegoRaceActor::SetWorldSpeed(MxFloat p_worldSpeed)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014cc0
|
||||
void LegoRaceActor::VTable0x68()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014cd0
|
||||
void LegoRaceActor::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014ce0
|
||||
MxS32 LegoRaceActor::VTable0x90()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10014cf0
|
||||
MxS32 LegoRaceActor::VTable0x94()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
@ -19,12 +19,26 @@ GasStation::GasStation()
|
||||
NotificationManager()->Register(this);
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10004770
|
||||
MxBool GasStation::VTable0x5c()
|
||||
{
|
||||
// TODO
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100048c0
|
||||
GasStation::~GasStation()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10004990
|
||||
MxResult GasStation::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
// TODO
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10004a60
|
||||
MxLong GasStation::Notify(MxParam& p_param)
|
||||
{
|
||||
@ -33,6 +47,18 @@ MxLong GasStation::Notify(MxParam& p_param)
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10004b30
|
||||
void GasStation::VTable0x50()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10005c40
|
||||
void GasStation::VTable0x68(MxBool p_add)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10005c90
|
||||
MxResult GasStation::Tickle()
|
||||
{
|
||||
@ -40,3 +66,10 @@ MxResult GasStation::Tickle()
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10005e70
|
||||
MxBool GasStation::VTable0x64()
|
||||
{
|
||||
// TODO
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -18,3 +18,10 @@ AmbulanceMissionState::AmbulanceMissionState()
|
||||
m_color4 = 0;
|
||||
m_color5 = 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10037440
|
||||
MxResult AmbulanceMissionState::VTable0x1c(LegoFileStream* p_legoFileStream)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -12,3 +12,10 @@ HospitalState::HospitalState()
|
||||
this->m_unk0x14 = 0;
|
||||
this->m_unk0x16 = 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10076530
|
||||
MxResult HospitalState::VTable0x1c(LegoFileStream* p_legoFileStream)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1 +1,32 @@
|
||||
#include "bumpbouy.h"
|
||||
|
||||
// STUB: LEGO1 0x1000fd00
|
||||
void BumpBouy::ParseAction(char*)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1000fd10
|
||||
void BumpBouy::SetWorldSpeed(MxFloat p_worldSpeed)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1000fd20
|
||||
void BumpBouy::VTable0x70(float p_float)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1000fd30
|
||||
void BumpBouy::VTable0x74(Matrix4& p_transform)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100274d0
|
||||
MxLong BumpBouy::Notify(MxParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -12,6 +12,13 @@ HistoryBook::~HistoryBook()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10082610
|
||||
MxResult HistoryBook::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
// TODO
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10082680
|
||||
MxLong HistoryBook::Notify(MxParam& p_param)
|
||||
{
|
||||
@ -19,3 +26,16 @@ MxLong HistoryBook::Notify(MxParam& p_param)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100826f0
|
||||
void HistoryBook::VTable0x50()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10082a10
|
||||
MxBool HistoryBook::VTable0x64()
|
||||
{
|
||||
// TODO
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -2,3 +2,17 @@
|
||||
|
||||
// NOTE: This is copied from base class LegoActor. IsleActor may in fact be larger but we don't know yet.
|
||||
DECOMP_SIZE_ASSERT(IsleActor, 0x78)
|
||||
|
||||
// STUB: LEGO1 0x1002c780
|
||||
MxResult IsleActor::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
// TODO
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002c7b0
|
||||
MxLong IsleActor::Notify(MxParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -24,6 +24,13 @@ void IslePathActor::Destroy(MxBool p_fromDestructor)
|
||||
LegoPathActor::Destroy(FALSE);
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1001a2c0
|
||||
MxLong IslePathActor::Notify(MxParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1001a350
|
||||
void IslePathActor::VTable0xe0()
|
||||
{
|
||||
|
||||
@ -11,3 +11,10 @@ JukeBoxEntity::~JukeBoxEntity()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10085e40
|
||||
MxLong JukeBoxEntity::Notify(MxParam& p_param)
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -20,6 +20,13 @@ Pizza::~Pizza()
|
||||
TickleManager()->UnregisterClient(this);
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10038170
|
||||
MxResult Pizza::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
// TODO
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100388a0
|
||||
MxResult Pizza::Tickle()
|
||||
{
|
||||
|
||||
@ -119,6 +119,12 @@ void LegoROI::SetDisplayBB(MxS32 p_displayBB)
|
||||
// Intentionally empty function
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100aa340
|
||||
float LegoROI::IntrinsicImportance() const
|
||||
{
|
||||
return .5;
|
||||
}
|
||||
|
||||
// Note: Actually part of parent class (doesn't exist yet)
|
||||
// STUB: LEGO1 0x100aa350
|
||||
void LegoROI::UpdateWorldBoundingVolumes()
|
||||
|
||||
@ -17,6 +17,7 @@ class LegoROI : public ViewROI {
|
||||
public:
|
||||
LegoROI(Tgl::Renderer* p_renderer, ViewLODList* p_lodList, MxTime p_time);
|
||||
|
||||
virtual float IntrinsicImportance() const override; // vtable+0x4
|
||||
// Note: Actually part of parent class (doesn't exist yet)
|
||||
virtual void UpdateWorldBoundingVolumes() override; // vtable+0x18
|
||||
|
||||
|
||||
@ -10,6 +10,9 @@ class MxMatrix : public Matrix4 {
|
||||
inline MxMatrix() : Matrix4(m_elements) {}
|
||||
inline MxMatrix(const MxMatrix& p_matrix) : Matrix4(m_elements) { Equals(p_matrix); }
|
||||
|
||||
// FUNCTION: LEGO1 0x10002850
|
||||
virtual void operator=(const Matrix4& p_matrix) { Equals(p_matrix); } // vtable+0x28
|
||||
|
||||
// No idea why there's another equals. Maybe to some other type like the
|
||||
// DirectX Retained Mode Matrix type which is also a float* alias?
|
||||
// FUNCTION: LEGO1 0x10002860
|
||||
|
||||
@ -112,7 +112,7 @@ Result GroupImpl::RemoveAll()
|
||||
return Error;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100a34c0
|
||||
// STUB: LEGO1 0x100a3540
|
||||
Result GroupImpl::Unknown()
|
||||
{
|
||||
return Error;
|
||||
|
||||
@ -63,7 +63,6 @@ class RendererImpl : public Renderer {
|
||||
|
||||
// vtable+0x20
|
||||
virtual Unk* CreateUnk() override;
|
||||
virtual Texture* CreateTexture() override;
|
||||
virtual Texture* CreateTexture(
|
||||
int width,
|
||||
int height,
|
||||
@ -73,6 +72,8 @@ class RendererImpl : public Renderer {
|
||||
int paletteEntryCount,
|
||||
const PaletteEntry* pEntries
|
||||
) override;
|
||||
virtual Texture* CreateTexture() override;
|
||||
|
||||
virtual Result SetTextureDefaultShadeCount(unsigned long) override;
|
||||
|
||||
// vtable+0x30
|
||||
@ -307,12 +308,12 @@ class GroupImpl : public Group {
|
||||
virtual Result SetTexture(const Texture*);
|
||||
virtual Result GetTexture(Texture*&);
|
||||
virtual Result SetMaterialMode(MaterialMode);
|
||||
virtual Result Add(const Group*);
|
||||
virtual Result Add(const Mesh*);
|
||||
|
||||
// vtable+0x20
|
||||
virtual Result Add(const Mesh*);
|
||||
virtual Result Remove(const Group*);
|
||||
virtual Result Add(const Group*);
|
||||
virtual Result Remove(const Mesh*);
|
||||
virtual Result Remove(const Group*);
|
||||
virtual Result RemoveAll();
|
||||
|
||||
// vtable+0x30
|
||||
|
||||
@ -34,7 +34,7 @@ Result RendererImpl::Create()
|
||||
return (m_data != NULL) ? Success : Error;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a1894
|
||||
// FUNCTION: LEGO1 0x100a1830
|
||||
Device* RendererImpl::CreateDevice(const DeviceDirect3DCreateData& data)
|
||||
{
|
||||
DeviceImpl* device = new DeviceImpl();
|
||||
|
||||
@ -150,7 +150,7 @@ Result TextureImpl::Changed(int texelsChanged, int paletteChanged)
|
||||
return ResultVal(m_data->Changed(texelsChanged, paletteChanged));
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a3d00
|
||||
// FUNCTION: LEGO1 0x100a3cc0
|
||||
Result TextureImpl::GetBufferAndPalette(
|
||||
int* width,
|
||||
int* height,
|
||||
|
||||
@ -131,7 +131,6 @@ class Renderer : public Object {
|
||||
|
||||
// vtable+0x20
|
||||
virtual Unk* CreateUnk() = 0;
|
||||
virtual Texture* CreateTexture() = 0;
|
||||
virtual Texture* CreateTexture(
|
||||
int width,
|
||||
int height,
|
||||
@ -141,6 +140,7 @@ class Renderer : public Object {
|
||||
int paletteEntryCount,
|
||||
const PaletteEntry* pEntries
|
||||
) = 0;
|
||||
virtual Texture* CreateTexture() = 0;
|
||||
virtual Result SetTextureDefaultShadeCount(unsigned long) = 0;
|
||||
|
||||
// vtable+0x30
|
||||
@ -278,10 +278,10 @@ class Group : public Object {
|
||||
virtual Result SetTexture(const Texture*) = 0;
|
||||
virtual Result GetTexture(Texture*&) = 0;
|
||||
virtual Result SetMaterialMode(MaterialMode) = 0;
|
||||
virtual Result Add(const Group*) = 0;
|
||||
virtual Result Add(const Mesh*) = 0;
|
||||
virtual Result Remove(const Group*) = 0;
|
||||
virtual Result Add(const Group*) = 0;
|
||||
virtual Result Remove(const Mesh*) = 0;
|
||||
virtual Result Remove(const Group*) = 0;
|
||||
virtual Result RemoveAll() = 0;
|
||||
|
||||
// This is TransformLocalToWorld in the leak, however it seems
|
||||
|
||||
@ -41,6 +41,24 @@ void ViewROI::UpdateWorldData(const MxMatrix& parent2world)
|
||||
}
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100a9fc0
|
||||
void ViewROI::VTable0x24(const MxMatrix& p_transform)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100aa0a0
|
||||
void ViewROI::SetLocalTransform(const Matrix4& p_transform)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100aa180
|
||||
void ViewROI::VTable0x1c()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100aa500
|
||||
undefined ViewROI::SetUnk101013d8(undefined p_flag)
|
||||
{
|
||||
|
||||
@ -44,9 +44,12 @@ class ViewROI : public OrientableROI {
|
||||
reinterpret_cast<ViewLODList*>(m_lods)->AddRef();
|
||||
}
|
||||
}
|
||||
virtual float IntrinsicImportance() const;
|
||||
virtual Tgl::Group* GetGeometry();
|
||||
virtual const Tgl::Group* GetGeometry() const;
|
||||
virtual float IntrinsicImportance() const override; // vtable+0x04
|
||||
virtual void VTable0x1c() override; // vtable+0x1c
|
||||
virtual void SetLocalTransform(const Matrix4& p_transform) override; // vtable+0x20
|
||||
virtual void VTable0x24(const MxMatrix& p_transform) override; // vtable+0x24
|
||||
virtual const Tgl::Group* GetGeometry() const; // vtable+0x34
|
||||
virtual Tgl::Group* GetGeometry(); // vtable+0x30
|
||||
|
||||
static undefined SetUnk101013d8(undefined p_flag);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user