mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 08:24:16 +00:00
Implement various small LegoPathController functions (#914)
* Implement/match LegoPathController::Tickle * Implement various small LegoPathController functions * Add 0x10046b30
This commit is contained in:

committed by
GitHub

parent
b6fc8e27b1
commit
91fe09af3c
@@ -31,6 +31,8 @@ public:
|
||||
MxResult AddActor(LegoPathActor* p_actor);
|
||||
void FUN_100575b0(Vector3& p_point1, Vector3& p_point2, LegoPathActor* p_actor);
|
||||
MxU32 Intersect(float p_scale, Vector3& p_point1, Vector3& p_point2, Vector3& p_point3, LegoEdge*& p_edge);
|
||||
MxU32 FUN_10057fe0(LegoAnimPresenter* p_presenter);
|
||||
MxU32 FUN_100586e0(LegoAnimPresenter* p_presenter);
|
||||
|
||||
inline LegoPathActorSet* GetActors() { return &m_actors; }
|
||||
inline LegoAnimPresenterSet* GetPresenters() { return &m_presenters; }
|
||||
|
@@ -92,7 +92,7 @@ public:
|
||||
undefined4 FUN_10046770(LegoPathActor* p_actor);
|
||||
void FUN_100468f0(LegoAnimPresenter* p_presenter);
|
||||
void FUN_10046930(LegoAnimPresenter* p_presenter);
|
||||
MxResult FUN_10046b30(LegoPathBoundary** p_path, MxS32& p_value);
|
||||
MxResult FUN_10046b30(LegoPathBoundary*& p_boundaries, MxS32& p_numL);
|
||||
LegoPathBoundary* GetPathBoundary(const char* p_name);
|
||||
void Enable(MxBool p_enable);
|
||||
void FUN_10046bb0(LegoWorld* p_world);
|
||||
|
@@ -5,6 +5,8 @@
|
||||
#include "mxatom.h"
|
||||
#include "mxtypes.h"
|
||||
|
||||
class LegoWorld;
|
||||
|
||||
// VTABLE: LEGO1 0x100d7d9c
|
||||
// SIZE 0x0c
|
||||
struct LegoPathStructBase {
|
||||
@@ -28,17 +30,18 @@ public:
|
||||
struct LegoPathStruct : public LegoPathStructBase {
|
||||
public:
|
||||
// FUNCTION: LEGO1 0x100473a0
|
||||
LegoPathStruct() : m_unk0x0c(0) {}
|
||||
LegoPathStruct() : m_world(NULL) {}
|
||||
|
||||
// FUNCTION: LEGO1 0x10047470
|
||||
~LegoPathStruct() override {}
|
||||
|
||||
void VTable0x04(undefined4, undefined4, undefined4); // vtable+0x04
|
||||
|
||||
inline void SetWorld(LegoWorld* p_world) { m_world = p_world; }
|
||||
inline void SetAtomId(const MxAtomId& p_atomId) { m_atomId = p_atomId; }
|
||||
|
||||
undefined4 m_unk0x0c; // 0x0c
|
||||
MxAtomId m_atomId; // 0x10
|
||||
LegoWorld* m_world; // 0x0c
|
||||
MxAtomId m_atomId; // 0x10
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10047440
|
||||
|
@@ -85,7 +85,7 @@ public:
|
||||
void FUN_1001fe90(LegoAnimPresenter* p_presenter);
|
||||
LegoPathBoundary* FindPathBoundary(const char* p_name);
|
||||
void AddPath(LegoPathController* p_controller);
|
||||
MxResult GetCurrPathInfo(LegoPathBoundary** p_path, MxS32& p_value);
|
||||
MxResult GetCurrPathInfo(LegoPathBoundary** p_boundaries, MxS32& p_numL);
|
||||
MxCore* Find(const char* p_class, const char* p_name);
|
||||
MxCore* Find(const MxAtomId& p_atom, MxS32 p_entityId);
|
||||
|
||||
|
Reference in New Issue
Block a user