From a7c43cbe1759f6b934584b76d743674fc085b61a Mon Sep 17 00:00:00 2001 From: jonschz <17198703+jonschz@users.noreply.github.com> Date: Sat, 6 Sep 2025 17:39:28 +0200 Subject: [PATCH] Small BETA10 corrections (#1681) * Small BETA10 corrections --------- Co-authored-by: jonschz --- LEGO1/lego/legoomni/include/legoinputmanager.h | 7 +++---- LEGO1/lego/legoomni/src/actors/act2actor.cpp | 2 ++ .../lego/legoomni/src/common/mxtransitionmanager.cpp | 12 +++--------- LEGO1/lego/legoomni/src/input/legoinputmanager.cpp | 7 ++++--- LEGO1/lego/legoomni/src/paths/legopathstruct.cpp | 1 - LEGO1/lego/legoomni/src/race/carrace.cpp | 1 + LEGO1/lego/legoomni/src/race/legorace.cpp | 1 + LEGO1/omni/include/mxvideomanager.h | 2 +- LEGO1/realtime/roi.h | 2 +- 9 files changed, 16 insertions(+), 19 deletions(-) diff --git a/LEGO1/lego/legoomni/include/legoinputmanager.h b/LEGO1/lego/legoomni/include/legoinputmanager.h index 0013bcde..cc6ca317 100644 --- a/LEGO1/lego/legoomni/include/legoinputmanager.h +++ b/LEGO1/lego/legoomni/include/legoinputmanager.h @@ -111,16 +111,15 @@ public: void SetWorld(LegoWorld* p_world); void ClearWorld(); - void SetUnknown88(MxBool p_unk0x88) { m_unk0x88 = p_unk0x88; } void SetUnknown335(MxBool p_unk0x335) { m_unk0x335 = p_unk0x335; } void SetUnknown336(MxBool p_unk0x336) { m_unk0x336 = p_unk0x336; } void SetUseJoystick(MxBool p_useJoystick) { m_useJoystick = p_useJoystick; } void SetJoystickIndex(MxS32 p_joystickIndex) { m_joystickIndex = p_joystickIndex; } - // FUNCTION: BETA10 0x1002e290 + // FUNCTION: BETA10 0x1002e390 void DisableInputProcessing() { - m_unk0x88 = TRUE; + m_inputProcessingDisabled = TRUE; m_unk0x336 = FALSE; } @@ -155,7 +154,7 @@ private: MxBool m_unk0x80; // 0x80 MxBool m_unk0x81; // 0x81 LegoControlManager* m_controlManager; // 0x84 - MxBool m_unk0x88; // 0x88 + MxBool m_inputProcessingDisabled; // 0x88 IDirectInput* m_directInput; // 0x8c IDirectInputDevice* m_directInputDevice; // 0x90 MxBool m_kbStateSuccess; // 0x94 diff --git a/LEGO1/lego/legoomni/src/actors/act2actor.cpp b/LEGO1/lego/legoomni/src/actors/act2actor.cpp index 4ccce7a8..d6e09b71 100644 --- a/LEGO1/lego/legoomni/src/actors/act2actor.cpp +++ b/LEGO1/lego/legoomni/src/actors/act2actor.cpp @@ -36,7 +36,9 @@ Act2Actor::Location g_brickstrLocations[] = { {{26.470566, 0.069, -44.670845}, {0.004602, 0.0, -0.99998897}, "int26", FALSE}, {{-6.323625, 0.069, -47.96045}, {-0.982068, 0.0, 0.188529}, "edg02_53", FALSE}, {{-36.689, -0.978409, 31.449}, {0.083792, -0.94303, -0.66398698}, "edg00_157", FALSE}, +#ifndef BETA10 {{-44.6, 0.1, 45.3}, {0.95, 0.0, -0.3}, "edg00_154", FALSE}, +#endif }; // GLOBAL: LEGO1 0x100f0f1c diff --git a/LEGO1/lego/legoomni/src/common/mxtransitionmanager.cpp b/LEGO1/lego/legoomni/src/common/mxtransitionmanager.cpp index 6313cae2..e32fe6ae 100644 --- a/LEGO1/lego/legoomni/src/common/mxtransitionmanager.cpp +++ b/LEGO1/lego/legoomni/src/common/mxtransitionmanager.cpp @@ -121,15 +121,9 @@ MxResult MxTransitionManager::StartTransition( m_animationSpeed = p_speed; - MxTickleManager* tickleManager = TickleManager(); - tickleManager->RegisterClient(this, p_speed); - - LegoInputManager* inputManager = InputManager(); - inputManager->SetUnknown88(TRUE); - inputManager->SetUnknown336(FALSE); - - LegoVideoManager* videoManager = VideoManager(); - videoManager->SetRender3D(FALSE); + TickleManager()->RegisterClient(this, p_speed); + InputManager()->DisableInputProcessing(); + VideoManager()->SetRender3D(FALSE); SetAppCursor(e_cursorBusy); return SUCCESS; diff --git a/LEGO1/lego/legoomni/src/input/legoinputmanager.cpp b/LEGO1/lego/legoomni/src/input/legoinputmanager.cpp index fea50c94..1b3d3fc8 100644 --- a/LEGO1/lego/legoomni/src/input/legoinputmanager.cpp +++ b/LEGO1/lego/legoomni/src/input/legoinputmanager.cpp @@ -39,7 +39,7 @@ LegoInputManager::LegoInputManager() m_y = 0; m_controlManager = NULL; m_unk0x81 = FALSE; - m_unk0x88 = FALSE; + m_inputProcessingDisabled = FALSE; m_directInput = NULL; m_directInputDevice = NULL; m_kbStateSuccess = FALSE; @@ -346,7 +346,7 @@ void LegoInputManager::QueueEvent(NotificationId p_id, MxU8 p_modifier, MxLong p { LegoEventNotificationParam param = LegoEventNotificationParam(p_id, NULL, p_modifier, p_x, p_y, p_key); - if (((!m_unk0x88) || ((m_unk0x335 && (param.GetNotification() == c_notificationButtonDown)))) || + if (((!m_inputProcessingDisabled) || ((m_unk0x335 && (param.GetNotification() == c_notificationButtonDown)))) || ((m_unk0x336 && (p_key == VK_SPACE)))) { ProcessOneEvent(param); } @@ -585,9 +585,10 @@ void LegoInputManager::StopAutoDragTimer() } // FUNCTION: LEGO1 0x1005cff0 +// FUNCTION: BETA10 0x10096a10 void LegoInputManager::EnableInputProcessing() { - m_unk0x88 = FALSE; + m_inputProcessingDisabled = FALSE; g_clickedObjectId = -1; g_clickedAtom = NULL; } diff --git a/LEGO1/lego/legoomni/src/paths/legopathstruct.cpp b/LEGO1/lego/legoomni/src/paths/legopathstruct.cpp index 276b66ab..7d8dfc0f 100644 --- a/LEGO1/lego/legoomni/src/paths/legopathstruct.cpp +++ b/LEGO1/lego/legoomni/src/paths/legopathstruct.cpp @@ -19,7 +19,6 @@ DECOMP_SIZE_ASSERT(LegoPathStruct, 0x14) extern MxU32 g_isleFlags; // GLOBAL: LEGO1 0x100f119c -// GLOBAL: BETA10 0x100f119c MxBool g_unk0x100f119c = FALSE; // FUNCTION: LEGO1 0x1001b700 diff --git a/LEGO1/lego/legoomni/src/race/carrace.cpp b/LEGO1/lego/legoomni/src/race/carrace.cpp index fa52edba..ca61cd74 100644 --- a/LEGO1/lego/legoomni/src/race/carrace.cpp +++ b/LEGO1/lego/legoomni/src/race/carrace.cpp @@ -68,6 +68,7 @@ const LegoChar* g_strCRCEDGEY0 = "C_RCEDGEY0"; MxS32 g_unk0x100f0c7c = 2; // FUNCTION: LEGO1 0x10016a90 +// FUNCTION: BETA10 0x100c82e8 CarRace::CarRace() { m_skeleton = NULL; diff --git a/LEGO1/lego/legoomni/src/race/legorace.cpp b/LEGO1/lego/legoomni/src/race/legorace.cpp index 1a01e72f..71e59f02 100644 --- a/LEGO1/lego/legoomni/src/race/legorace.cpp +++ b/LEGO1/lego/legoomni/src/race/legorace.cpp @@ -53,6 +53,7 @@ MxResult LegoRace::Create(MxDSAction& p_dsAction) } // FUNCTION: LEGO1 0x10015d40 +// FUNCTION: BETA10 0x100c7ab5 LegoRace::~LegoRace() { g_unk0x100f119c = FALSE; diff --git a/LEGO1/omni/include/mxvideomanager.h b/LEGO1/omni/include/mxvideomanager.h index 60349d13..63c38977 100644 --- a/LEGO1/omni/include/mxvideomanager.h +++ b/LEGO1/omni/include/mxvideomanager.h @@ -43,7 +43,7 @@ public: MxVideoParam& GetVideoParam() { return this->m_videoParam; } LPDIRECTDRAW GetDirectDraw() { return this->m_pDirectDraw; } - // FUNCTION: BETA10 0x1002e290 + // FUNCTION: BETA10 0x100969e0 MxDisplaySurface* GetDisplaySurface() { return this->m_displaySurface; } MxRegion* GetRegion() { return this->m_region; } diff --git a/LEGO1/realtime/roi.h b/LEGO1/realtime/roi.h index dd5b9993..25829f7e 100644 --- a/LEGO1/realtime/roi.h +++ b/LEGO1/realtime/roi.h @@ -56,7 +56,7 @@ public: // BoundingSphere::operator= // SYNTHETIC: BETA10 0x1001fc50 - // BoundingSphere::BoundingSphere + // ??0BoundingSphere@@QAE@XZ private: Mx3DPointFloat center; // 0x00