diff --git a/LEGO1/lego/legoomni/include/legopathactor.h b/LEGO1/lego/legoomni/include/legopathactor.h index b2d3b128..3b430b45 100644 --- a/LEGO1/lego/legoomni/include/legopathactor.h +++ b/LEGO1/lego/legoomni/include/legopathactor.h @@ -63,8 +63,8 @@ class LegoPathActor : public LegoActor { float p_srcScale, LegoUnknown100db7f4& p_destEdge, float p_destScale - ); // vtable+0x88 - virtual MxS32 VTable0x8c(float p_time, MxMatrix& p_transform); // vtable+0x8c + ); // vtable+0x88 + virtual MxS32 VTable0x8c(float p_time, Matrix4& p_transform); // vtable+0x8c // FUNCTION: LEGO1 0x10002d40 virtual MxU32 VTable0x90(float, Matrix4&) { return FALSE; } // vtable+0x90 diff --git a/LEGO1/lego/legoomni/src/paths/legopathactor.cpp b/LEGO1/lego/legoomni/src/paths/legopathactor.cpp index d6d9435f..9e29e2a0 100644 --- a/LEGO1/lego/legoomni/src/paths/legopathactor.cpp +++ b/LEGO1/lego/legoomni/src/paths/legopathactor.cpp @@ -209,13 +209,15 @@ MxResult LegoPathActor::VTable0x84( } // FUNCTION: LEGO1 0x1002e100 -MxS32 LegoPathActor::VTable0x8c(float p_time, MxMatrix& p_transform) +MxS32 LegoPathActor::VTable0x8c(float p_time, Matrix4& p_transform) { if (m_userNavFlag && m_state == 0) { m_lastTime = p_time; + Mx3DPointFloat p1, p2, p3, p4, p5; p5 = Vector3(m_roi->GetWorldDirection()); p4 = Vector3(m_roi->GetWorldPosition()); + LegoNavController* nav = NavController(); m_worldSpeed = nav->GetLinearVel(); @@ -223,9 +225,12 @@ MxS32 LegoPathActor::VTable0x8c(float p_time, MxMatrix& p_transform) return -1; } - Mx3DPointFloat p6 = p2; - m_unk0xe9 = m_boundary->Intersect(m_roi->GetWorldBoundingSphere().Radius(), p4, p2, p3, m_destEdge); + Mx3DPointFloat p6; + p6 = p2; + MxS32 result = 0; + + m_unk0xe9 = m_boundary->Intersect(m_roi->GetWorldBoundingSphere().Radius(), p4, p2, p3, m_destEdge); if (m_unk0xe9 == -1) { return -1; } @@ -234,7 +239,7 @@ MxS32 LegoPathActor::VTable0x8c(float p_time, MxMatrix& p_transform) p2 = p3; } - MxS32 result = VTable0x68(p4, p2, p3); + result = VTable0x68(p4, p2, p3); if (result > 0) { p2 = p4; @@ -322,6 +327,7 @@ MxS32 LegoPathActor::VTable0x8c(float p_time, MxMatrix& p_transform) } } } + return -1; } diff --git a/LEGO1/lego/sources/misc/legounknown.cpp b/LEGO1/lego/sources/misc/legounknown.cpp index 75e78d64..e9210dc7 100644 --- a/LEGO1/lego/sources/misc/legounknown.cpp +++ b/LEGO1/lego/sources/misc/legounknown.cpp @@ -27,8 +27,8 @@ void LegoUnknown::FUN_1009a140(Vector3& p_point1, Vector3& p_point2, Vector3& p_ } } -// FUNCTION: LEGO1 0x1009a1e0 -LegoResult LegoUnknown::FUN_1009a1e0(float, MxMatrix&, Vector3&, LegoU32) +// STUB: LEGO1 0x1009a1e0 +LegoResult LegoUnknown::FUN_1009a1e0(float, Matrix4&, Vector3&, LegoU32) { return FAILURE; } diff --git a/LEGO1/lego/sources/misc/legounknown.h b/LEGO1/lego/sources/misc/legounknown.h index 3cc39e05..8980d96a 100644 --- a/LEGO1/lego/sources/misc/legounknown.h +++ b/LEGO1/lego/sources/misc/legounknown.h @@ -12,7 +12,7 @@ class LegoUnknown { ~LegoUnknown(); void FUN_1009a140(Vector3& p_point1, Vector3& p_point2, Vector3& p_point3, Vector3& p_point4); - LegoResult FUN_1009a1e0(float, MxMatrix&, Vector3&, LegoU32); + LegoResult FUN_1009a1e0(float, Matrix4&, Vector3&, LegoU32); private: Mx3DPointFloat m_unk0x00[4]; // 0x00 diff --git a/tools/ncc/ncc.style b/tools/ncc/ncc.style index 8dc0091b..5147d6bc 100644 --- a/tools/ncc/ncc.style +++ b/tools/ncc/ncc.style @@ -18,4 +18,4 @@ VariableName: Integer: '' Bool: '' Pointer: '' - Pattern: '^(unk0x[a-f0-9]{1,8}$|(?!unk)[a-z][a-zA-Z0-9]*)$' + Pattern: '^(unk0x[a-f0-9]{1,8}$|(?!unk)[a-z][a-zA-Z0-9]*|str[a-zA-Z0-9_]*)$'