Implement/match various small LegoAnimPresenter functions (#846)

* Implement/match various small LegoAnimPresenter functions

* Fix location of anim function

* fix
This commit is contained in:
Christian Semmler
2024-04-24 09:51:28 -04:00
committed by GitHub
parent f898462d17
commit 410824bd0f
12 changed files with 71 additions and 26 deletions

View File

@@ -1,7 +1,7 @@
#include "legoanimactor.h"
#include "define.h"
#include "legoanimpresenter.h"
#include "legolocomotionanimpresenter.h"
#include "legoworld.h"
#include "misc.h"
#include "mxutilities.h"
@@ -200,7 +200,8 @@ void LegoAnimActor::ParseAction(char* p_extra)
char* token = strtok(value, g_parseExtraTokens);
while (token) {
LegoAnimPresenter* presenter = (LegoAnimPresenter*) world->Find("LegoAnimPresenter", token);
LegoLocomotionAnimPresenter* presenter =
(LegoLocomotionAnimPresenter*) world->Find("LegoAnimPresenter", token);
if (presenter != NULL) {
token = strtok(NULL, g_parseExtraTokens);

View File

@@ -1,5 +1,6 @@
#include "legoextraactor.h"
#include "legolocomotionanimpresenter.h"
#include "legosoundmanager.h"
#include "misc.h"
#include "mxmisc.h"
@@ -11,10 +12,10 @@ DECOMP_SIZE_ASSERT(LegoExtraActor, 0x1dc)
LegoWorld* g_unk0x100f31d0 = NULL;
// GLOBAL: LEGO1 0x100f31d4
LegoAnimPresenter* m_assAnimP = NULL;
LegoLocomotionAnimPresenter* m_assAnimP = NULL;
// GLOBAL: LEGO1 0x100f31d8
LegoAnimPresenter* m_disAnimP = NULL;
LegoLocomotionAnimPresenter* m_disAnimP = NULL;
// GLOBAL: LEGO1 0x100f31dc
MxS32 g_unk0x100f31dc = 0;
@@ -156,8 +157,8 @@ inline void LegoExtraActor::FUN_1002ad8a()
if (g_unk0x100f31d0 != w) {
g_unk0x100f31d0 = w;
m_assAnimP = (LegoAnimPresenter*) w->Find("LegoAnimPresenter", "BNsAss01");
m_disAnimP = (LegoAnimPresenter*) w->Find("LegoAnimPresenter", "BNsDis01");
m_assAnimP = (LegoLocomotionAnimPresenter*) w->Find("LegoAnimPresenter", "BNsAss01");
m_disAnimP = (LegoLocomotionAnimPresenter*) w->Find("LegoAnimPresenter", "BNsDis01");
}
if (!m_assAnim) {

View File

@@ -39,6 +39,12 @@ void LegoPathController::FUN_100468f0(LegoAnimPresenter* p_presenter)
{
}
// STUB: LEGO1 0x10046930
// FUNCTION: BETA10 0x100b737b
void LegoPathController::FUN_10046930(LegoAnimPresenter* p_presenter)
{
}
// STUB: LEGO1 0x10046b30
MxResult LegoPathController::FUN_10046b30(LegoPathBoundary** p_path, MxS32& p_value)
{