mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 08:24:16 +00:00
Implement/match LegoRaceMap (#1087)
* Implement/match LegoRaceMap * Fix CI, address review comments --------- Co-authored-by: jonschz <jonschz@users.noreply.github.com>
This commit is contained in:
@@ -118,7 +118,9 @@ public:
|
||||
m_unk0x336 = FALSE;
|
||||
}
|
||||
|
||||
// FUNCTION: BETA10 0x10031ba0
|
||||
LegoControlManager* GetControlManager() { return m_controlManager; }
|
||||
|
||||
LegoWorld* GetWorld() { return m_world; }
|
||||
LegoCameraController* GetCamera() { return m_camera; }
|
||||
|
||||
|
@@ -122,7 +122,10 @@ public:
|
||||
|
||||
LegoVideoManager* GetVideoManager() { return (LegoVideoManager*) m_videoManager; }
|
||||
LegoSoundManager* GetSoundManager() { return (LegoSoundManager*) m_soundManager; }
|
||||
|
||||
// FUNCTION: BETA10 0x1009e7a0
|
||||
LegoInputManager* GetInputManager() { return m_inputManager; }
|
||||
|
||||
LegoTextureContainer* GetTextureContainer() { return m_textureContainer; }
|
||||
ViewLODListManager* GetViewLODListManager() { return m_viewLODListManager; }
|
||||
LegoWorld* GetCurrentWorld() { return m_currentWorld; }
|
||||
|
@@ -3,10 +3,17 @@
|
||||
|
||||
#include "legoraceactor.h"
|
||||
|
||||
class MxControlPresenter;
|
||||
class MxStillPresenter;
|
||||
|
||||
// VTABLE: LEGO1 0x100d8858 LegoRaceActor
|
||||
// VTABLE: LEGO1 0x100d8860 LegoAnimActor
|
||||
// VTABLE: LEGO1 0x100d8870 LegoPathActor
|
||||
// VTABLE: LEGO1 0x100d893c LegoRaceMap
|
||||
// VTABLE: BETA10 0x101be4dc LegoRaceActor
|
||||
// VTABLE: BETA10 0x101be4e0 LegoAnimActor
|
||||
// VTABLE: BETA10 0x101be4f8 LegoPathActor
|
||||
// VTABLE: BETA10 0x101be5e8 LegoRaceMap
|
||||
// SIZE 0x1b4
|
||||
class LegoRaceMap : public virtual LegoRaceActor {
|
||||
public:
|
||||
@@ -28,17 +35,37 @@ public:
|
||||
// LegoRaceMap::`scalar deleting destructor'
|
||||
|
||||
private:
|
||||
MxBool m_unk0x08; // 0x08
|
||||
void* m_unk0x0c; // 0x0c
|
||||
undefined4 m_unk0x10; // 0x10
|
||||
float m_unk0x14; // 0x14
|
||||
float m_unk0x18; // 0x18
|
||||
float m_unk0x1c; // 0x1c
|
||||
float m_unk0x20; // 0x20
|
||||
float m_unk0x24; // 0x24
|
||||
float m_unk0x28; // 0x28
|
||||
float m_unk0x2c; // 0x2c
|
||||
undefined4 m_unk0x30; // 0x30
|
||||
MxBool m_unk0x08; // 0x08
|
||||
MxStillPresenter* m_stillPresenter; // 0x0c
|
||||
|
||||
// variable name verified by BETA10 0x100ca82b
|
||||
MxControlPresenter* m_Map_Ctl; // 0x10
|
||||
|
||||
// likely an x-offset of the race map in world space
|
||||
float m_unk0x14; // 0x14
|
||||
// inversely scales the map in x direction (either convert world->screen space or to control the size)
|
||||
float m_unk0x18; // 0x18
|
||||
// likely a y-offset of the race map in world space
|
||||
float m_unk0x1c; // 0x1c
|
||||
// inversely scales the map in y direction (either convert world->screen space or to control the size)
|
||||
float m_unk0x20; // 0x20
|
||||
// scales the map in x direction (either convert world->screen space or to change the size)
|
||||
float m_unk0x24; // 0x24
|
||||
// scales the map in y direction (either convert world->screen space or to change the size)
|
||||
float m_unk0x28; // 0x28
|
||||
// likely an x-offset of the race map in screen space
|
||||
float m_unk0x2c; // 0x2c
|
||||
// likely a y-offset of the race map in screen space
|
||||
float m_unk0x30; // 0x30
|
||||
};
|
||||
|
||||
// GLOBAL: LEGO1 0x100d8848
|
||||
// LegoRaceMap::`vbtable'
|
||||
|
||||
// GLOBAL: LEGO1 0x100d8840
|
||||
// LegoRaceMap::`vbtable'{for `LegoAnimActor'}
|
||||
|
||||
// GLOBAL: LEGO1 0x100d8830
|
||||
// LegoRaceMap::`vbtable'{for `LegoRaceActor'}
|
||||
|
||||
#endif // LEGORACEMAP_H
|
||||
|
@@ -44,6 +44,7 @@ public:
|
||||
void SetSkyColor(float p_red, float p_green, float p_blue);
|
||||
void OverrideSkyColor(MxBool p_shouldOverride);
|
||||
MxResult ResetPalette(MxBool p_ignoreSkyColor);
|
||||
MxPresenter* GetPresenterByActionObjectName(const char* p_char);
|
||||
|
||||
void FUN_1007c520();
|
||||
|
||||
|
Reference in New Issue
Block a user