Implement/match LegoPathActor::ParseAction (#946)

* Implement/match LegoPathActor::ParseAction

* Fix naming

* Space
This commit is contained in:
Christian Semmler
2024-05-24 13:07:45 -04:00
committed by GitHub
parent 6774784b37
commit db90807d53
25 changed files with 137 additions and 75 deletions

View File

@@ -59,7 +59,7 @@ public:
MxBool VTable0x64() override; // vtable+64
void Enable(MxBool p_enable) override; // vtable+68
virtual void VTable0x6c(IslePathActor* p_actor); // vtable+6c
virtual void VTable0x6c(LegoPathActor* p_actor); // vtable+6c
MxLong HandleEndAction(MxEndActionNotificationParam& p_param);
MxLong HandleClick(LegoControlManagerEvent& p_param);

View File

@@ -137,7 +137,7 @@ public:
protected:
LegoWorld* m_world; // 0x154
IslePathActor* m_unk0x158; // 0x158
LegoPathActor* m_unk0x158; // 0x158
MxFloat m_unk0x15c; // 0x15c
};

View File

@@ -6,7 +6,6 @@
#include "mxomni.h"
class Isle;
class IslePathActor;
class LegoAnimationManager;
class LegoBuildingManager;
class LegoCharacterManager;
@@ -14,6 +13,7 @@ class LegoEntity;
class LegoGameState;
class LegoInputManager;
class LegoNavController;
class LegoPathActor;
class LegoPathBoundary;
class LegoPlantManager;
class LegoROI;
@@ -127,7 +127,7 @@ public:
ViewLODListManager* GetViewLODListManager() { return m_viewLODListManager; }
LegoWorld* GetCurrentWorld() { return m_currentWorld; }
LegoNavController* GetNavController() { return m_navController; }
IslePathActor* GetCurrentActor() { return m_currentActor; }
LegoPathActor* GetCurrentActor() { return m_currentActor; }
LegoPlantManager* GetLegoPlantManager() { return m_plantManager; }
LegoAnimationManager* GetAnimationManager() { return m_animationManager; }
LegoBuildingManager* GetLegoBuildingManager() { return m_buildingManager; }
@@ -139,7 +139,7 @@ public:
LegoWorldList* GetWorldList() { return m_worldList; }
inline void SetNavController(LegoNavController* p_navController) { m_navController = p_navController; }
inline void SetCurrentActor(IslePathActor* p_currentActor) { m_currentActor = p_currentActor; }
inline void SetCurrentActor(LegoPathActor* p_currentActor) { m_currentActor = p_currentActor; }
inline void SetCurrentWorld(LegoWorld* p_currentWorld) { m_currentWorld = p_currentWorld; }
inline void SetExit(MxBool p_exit) { m_exit = p_exit; }
inline MxResult StartActionIfUnknown0x13c(MxDSAction& p_dsAction)
@@ -162,7 +162,7 @@ private:
LegoWorld* m_currentWorld; // 0x7c
MxBool m_exit; // 0x80
LegoNavController* m_navController; // 0x84
IslePathActor* m_currentActor; // 0x88
LegoPathActor* m_currentActor; // 0x88
LegoCharacterManager* m_characterManager; // 0x8c
LegoPlantManager* m_plantManager; // 0x90
LegoAnimationManager* m_animationManager; // 0x94

View File

@@ -155,7 +155,7 @@ protected:
MxU32 m_state; // 0xdc
LegoUnknown100db7f4* m_destEdge; // 0xe0
MxFloat m_unk0xe4; // 0xe4
undefined m_unk0xe8; // 0xe8
MxBool m_collideBox; // 0xe8
undefined m_unk0xe9; // 0xe9
MxBool m_userNavFlag; // 0xea
MxMatrix m_unk0xec; // 0xec

View File

@@ -8,7 +8,6 @@
#include "mxpresenterlist.h"
#include "roi/legoroi.h"
class IslePathActor;
class LegoCameraController;
class LegoPathBoundary;
class LegoHideAnimPresenter;

View File

@@ -7,7 +7,6 @@
#include "lego/legoomni/include/actions/actionsfwd.h"
#include "mxtypes.h"
class IslePathActor;
class LegoAnimationManager;
class LegoBuildingManager;
class LegoCharacterManager;
@@ -16,6 +15,7 @@ class LegoGameState;
class LegoInputManager;
class LegoNavController;
class LegoOmni;
class LegoPathActor;
class LegoPlantManager;
class LegoROI;
class LegoSoundManager;
@@ -40,7 +40,7 @@ LegoControlManager* ControlManager();
LegoGameState* GameState();
LegoAnimationManager* AnimationManager();
LegoNavController* NavController();
IslePathActor* CurrentActor();
LegoPathActor* CurrentActor();
LegoWorld* CurrentWorld();
LegoCharacterManager* CharacterManager();
ViewManager* GetViewManager();
@@ -51,7 +51,7 @@ ViewLODListManager* GetViewLODListManager();
void FUN_10015820(MxBool p_disable, MxU16 p_flags);
LegoROI* FindROI(const char* p_name);
void SetROIVisible(const char* p_name, MxBool p_visible);
void SetCurrentActor(IslePathActor* p_currentActor);
void SetCurrentActor(LegoPathActor* p_currentActor);
MxResult StartActionIfUnknown0x13c(MxDSAction& p_dsAction);
void DeleteAction();
LegoWorld* FindWorld(const MxAtomId& p_atom, MxS32 p_entityid);