Small BETA10 corrections (#1681)

* Small BETA10 corrections

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
This commit is contained in:
jonschz
2025-09-06 17:39:28 +02:00
committed by GitHub
parent 190c040c96
commit a7c43cbe17
9 changed files with 16 additions and 19 deletions

View File

@@ -111,16 +111,15 @@ public:
void SetWorld(LegoWorld* p_world); void SetWorld(LegoWorld* p_world);
void ClearWorld(); void ClearWorld();
void SetUnknown88(MxBool p_unk0x88) { m_unk0x88 = p_unk0x88; }
void SetUnknown335(MxBool p_unk0x335) { m_unk0x335 = p_unk0x335; } void SetUnknown335(MxBool p_unk0x335) { m_unk0x335 = p_unk0x335; }
void SetUnknown336(MxBool p_unk0x336) { m_unk0x336 = p_unk0x336; } void SetUnknown336(MxBool p_unk0x336) { m_unk0x336 = p_unk0x336; }
void SetUseJoystick(MxBool p_useJoystick) { m_useJoystick = p_useJoystick; } void SetUseJoystick(MxBool p_useJoystick) { m_useJoystick = p_useJoystick; }
void SetJoystickIndex(MxS32 p_joystickIndex) { m_joystickIndex = p_joystickIndex; } void SetJoystickIndex(MxS32 p_joystickIndex) { m_joystickIndex = p_joystickIndex; }
// FUNCTION: BETA10 0x1002e290 // FUNCTION: BETA10 0x1002e390
void DisableInputProcessing() void DisableInputProcessing()
{ {
m_unk0x88 = TRUE; m_inputProcessingDisabled = TRUE;
m_unk0x336 = FALSE; m_unk0x336 = FALSE;
} }
@@ -155,7 +154,7 @@ private:
MxBool m_unk0x80; // 0x80 MxBool m_unk0x80; // 0x80
MxBool m_unk0x81; // 0x81 MxBool m_unk0x81; // 0x81
LegoControlManager* m_controlManager; // 0x84 LegoControlManager* m_controlManager; // 0x84
MxBool m_unk0x88; // 0x88 MxBool m_inputProcessingDisabled; // 0x88
IDirectInput* m_directInput; // 0x8c IDirectInput* m_directInput; // 0x8c
IDirectInputDevice* m_directInputDevice; // 0x90 IDirectInputDevice* m_directInputDevice; // 0x90
MxBool m_kbStateSuccess; // 0x94 MxBool m_kbStateSuccess; // 0x94

View File

@@ -36,7 +36,9 @@ Act2Actor::Location g_brickstrLocations[] = {
{{26.470566, 0.069, -44.670845}, {0.004602, 0.0, -0.99998897}, "int26", FALSE}, {{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}, {{-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}, {{-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}, {{-44.6, 0.1, 45.3}, {0.95, 0.0, -0.3}, "edg00_154", FALSE},
#endif
}; };
// GLOBAL: LEGO1 0x100f0f1c // GLOBAL: LEGO1 0x100f0f1c

View File

@@ -121,15 +121,9 @@ MxResult MxTransitionManager::StartTransition(
m_animationSpeed = p_speed; m_animationSpeed = p_speed;
MxTickleManager* tickleManager = TickleManager(); TickleManager()->RegisterClient(this, p_speed);
tickleManager->RegisterClient(this, p_speed); InputManager()->DisableInputProcessing();
VideoManager()->SetRender3D(FALSE);
LegoInputManager* inputManager = InputManager();
inputManager->SetUnknown88(TRUE);
inputManager->SetUnknown336(FALSE);
LegoVideoManager* videoManager = VideoManager();
videoManager->SetRender3D(FALSE);
SetAppCursor(e_cursorBusy); SetAppCursor(e_cursorBusy);
return SUCCESS; return SUCCESS;

View File

@@ -39,7 +39,7 @@ LegoInputManager::LegoInputManager()
m_y = 0; m_y = 0;
m_controlManager = NULL; m_controlManager = NULL;
m_unk0x81 = FALSE; m_unk0x81 = FALSE;
m_unk0x88 = FALSE; m_inputProcessingDisabled = FALSE;
m_directInput = NULL; m_directInput = NULL;
m_directInputDevice = NULL; m_directInputDevice = NULL;
m_kbStateSuccess = FALSE; 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); 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)))) { ((m_unk0x336 && (p_key == VK_SPACE)))) {
ProcessOneEvent(param); ProcessOneEvent(param);
} }
@@ -585,9 +585,10 @@ void LegoInputManager::StopAutoDragTimer()
} }
// FUNCTION: LEGO1 0x1005cff0 // FUNCTION: LEGO1 0x1005cff0
// FUNCTION: BETA10 0x10096a10
void LegoInputManager::EnableInputProcessing() void LegoInputManager::EnableInputProcessing()
{ {
m_unk0x88 = FALSE; m_inputProcessingDisabled = FALSE;
g_clickedObjectId = -1; g_clickedObjectId = -1;
g_clickedAtom = NULL; g_clickedAtom = NULL;
} }

View File

@@ -19,7 +19,6 @@ DECOMP_SIZE_ASSERT(LegoPathStruct, 0x14)
extern MxU32 g_isleFlags; extern MxU32 g_isleFlags;
// GLOBAL: LEGO1 0x100f119c // GLOBAL: LEGO1 0x100f119c
// GLOBAL: BETA10 0x100f119c
MxBool g_unk0x100f119c = FALSE; MxBool g_unk0x100f119c = FALSE;
// FUNCTION: LEGO1 0x1001b700 // FUNCTION: LEGO1 0x1001b700

View File

@@ -68,6 +68,7 @@ const LegoChar* g_strCRCEDGEY0 = "C_RCEDGEY0";
MxS32 g_unk0x100f0c7c = 2; MxS32 g_unk0x100f0c7c = 2;
// FUNCTION: LEGO1 0x10016a90 // FUNCTION: LEGO1 0x10016a90
// FUNCTION: BETA10 0x100c82e8
CarRace::CarRace() CarRace::CarRace()
{ {
m_skeleton = NULL; m_skeleton = NULL;

View File

@@ -53,6 +53,7 @@ MxResult LegoRace::Create(MxDSAction& p_dsAction)
} }
// FUNCTION: LEGO1 0x10015d40 // FUNCTION: LEGO1 0x10015d40
// FUNCTION: BETA10 0x100c7ab5
LegoRace::~LegoRace() LegoRace::~LegoRace()
{ {
g_unk0x100f119c = FALSE; g_unk0x100f119c = FALSE;

View File

@@ -43,7 +43,7 @@ public:
MxVideoParam& GetVideoParam() { return this->m_videoParam; } MxVideoParam& GetVideoParam() { return this->m_videoParam; }
LPDIRECTDRAW GetDirectDraw() { return this->m_pDirectDraw; } LPDIRECTDRAW GetDirectDraw() { return this->m_pDirectDraw; }
// FUNCTION: BETA10 0x1002e290 // FUNCTION: BETA10 0x100969e0
MxDisplaySurface* GetDisplaySurface() { return this->m_displaySurface; } MxDisplaySurface* GetDisplaySurface() { return this->m_displaySurface; }
MxRegion* GetRegion() { return this->m_region; } MxRegion* GetRegion() { return this->m_region; }

View File

@@ -56,7 +56,7 @@ public:
// BoundingSphere::operator= // BoundingSphere::operator=
// SYNTHETIC: BETA10 0x1001fc50 // SYNTHETIC: BETA10 0x1001fc50
// BoundingSphere::BoundingSphere // ??0BoundingSphere@@QAE@XZ
private: private:
Mx3DPointFloat center; // 0x00 Mx3DPointFloat center; // 0x00