From 2c992915152959c1d13a57bcf27d4c7bf0e64680 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Fri, 21 Feb 2025 15:43:56 -0700 Subject: [PATCH] Match `Act3::DebugCopter` --- LEGO1/lego/legoomni/src/worlds/act3.cpp | 10 ++++------ LEGO1/mxgeometry/mxquaternion.h | 8 ++++++-- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/LEGO1/lego/legoomni/src/worlds/act3.cpp b/LEGO1/lego/legoomni/src/worlds/act3.cpp index af9619ac..2853d240 100644 --- a/LEGO1/lego/legoomni/src/worlds/act3.cpp +++ b/LEGO1/lego/legoomni/src/worlds/act3.cpp @@ -823,19 +823,17 @@ void Act3::DebugCopter( DebugPrintf("\t%g, %g, %g, %g", EXPAND4(p_endPosition[2])); DebugPrintf("\t%g, %g, %g, %g\n\n", EXPAND4(p_endPosition[3])); - Mx4DPointFloat unk0x00, unk0x18; + Mx4DPointFloat startQuat, endQuat; if (p_unk0x1f4.GetFlags() != 0) { - // TODO: Match - unk0x00 = p_unk0x1f4.GetStartQuat(); - unk0x18 = p_unk0x1f4.GetEndQuat(); + p_unk0x1f4.GetQuat(startQuat, endQuat); DebugPrintf("Source quaternion..."); // STRING: LEGO1 0x100f7864 - DebugPrintf("\t%g, %g, %g, %g\n", EXPAND4(unk0x00)); + DebugPrintf("\t%g, %g, %g, %g\n", EXPAND4(startQuat)); DebugPrintf("Destination quaternion..."); - DebugPrintf("\t%g, %g, %g, %g\n", EXPAND4(unk0x18)); + DebugPrintf("\t%g, %g, %g, %g\n", EXPAND4(endQuat)); } } diff --git a/LEGO1/mxgeometry/mxquaternion.h b/LEGO1/mxgeometry/mxquaternion.h index a5fb006b..44218a6d 100644 --- a/LEGO1/mxgeometry/mxquaternion.h +++ b/LEGO1/mxgeometry/mxquaternion.h @@ -21,8 +21,12 @@ class MxQuaternionTransformer { inline void SetEnd(Vector4& p_v); inline int InterpolateToMatrix(Matrix4& p_matrix, float p_f); - const Vector4& GetStartQuat() const { return m_startQuat; } - const Vector4& GetEndQuat() const { return m_endQuat; } + void GetQuat(Vector4& p_startQuat, Vector4& p_endQuat) const + { + p_startQuat = m_startQuat; + p_endQuat = m_endQuat; + } + undefined4 GetFlags() const { return m_flags; } private: