From 5bba81c0cae505db9a3a9956a03f520dd4653e35 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Sun, 11 Feb 2024 10:44:55 -0500 Subject: [PATCH] Rename Infocenterstate::m_buffer to `m_letters` (#558) * Rename Infocenterstate::m_buffer * Rename function * Fix * Fix * Rename function * Rename function * Rename function --- LEGO1/lego/legoomni/include/infocenterstate.h | 19 +++++---- .../legoomni/src/common/legogamestate.cpp | 2 +- .../legoomni/src/infocenter/infocenter.cpp | 42 +++++++++---------- .../src/infocenter/infocenterdoor.cpp | 2 +- .../src/infocenter/infocenterstate.cpp | 10 ++--- 5 files changed, 38 insertions(+), 37 deletions(-) diff --git a/LEGO1/lego/legoomni/include/infocenterstate.h b/LEGO1/lego/legoomni/include/infocenterstate.h index bee82e37..d47f220e 100644 --- a/LEGO1/lego/legoomni/include/infocenterstate.h +++ b/LEGO1/lego/legoomni/include/infocenterstate.h @@ -29,8 +29,9 @@ class InfocenterState : public LegoState { // FUNCTION: LEGO1 0x10071830 MxBool VTable0x14() override { return FALSE; } // vtable+0x14 - inline MxS16 GetInfocenterBufferSize() { return sizeof(m_buffer) / sizeof(m_buffer[0]); } - inline MxStillPresenter* GetInfocenterBufferElement(MxS32 p_index) { return m_buffer[p_index]; } + inline MxS16 GetMaxNameLength() { return _countof(m_letters); } + inline MxStillPresenter* GetNameLetter(MxS32 p_index) { return m_letters[p_index]; } + inline MxBool HasRegistered() { return m_letters[0] != NULL; } inline Playlist& GetExitDialogueAct1() { return m_exitDialogueAct1; } inline Playlist& GetExitDialogueAct23() { return m_exitDialogueAct23; } inline Playlist& GetReturnDialogue(LegoGameState::Act p_act) { return m_returnDialogue[p_act]; } @@ -44,13 +45,13 @@ class InfocenterState : public LegoState { // InfocenterState::`scalar deleting destructor' private: - Playlist m_exitDialogueAct1; // 0x08 - Playlist m_exitDialogueAct23; // 0x14 - Playlist m_returnDialogue[3]; // 0x20 - Playlist m_leaveDialogue[3]; // 0x44 - Playlist m_bricksterDialogue; // 0x68 - MxU32 m_unk0x74; // 0x74 - MxStillPresenter* m_buffer[7]; // 0x78 + Playlist m_exitDialogueAct1; // 0x08 + Playlist m_exitDialogueAct23; // 0x14 + Playlist m_returnDialogue[3]; // 0x20 + Playlist m_leaveDialogue[3]; // 0x44 + Playlist m_bricksterDialogue; // 0x68 + MxU32 m_unk0x74; // 0x74 + MxStillPresenter* m_letters[7]; // 0x78 }; #endif // INFOCENTERSTATE_H diff --git a/LEGO1/lego/legoomni/src/common/legogamestate.cpp b/LEGO1/lego/legoomni/src/common/legogamestate.cpp index 9f7f7f86..ce379f47 100644 --- a/LEGO1/lego/legoomni/src/common/legogamestate.cpp +++ b/LEGO1/lego/legoomni/src/common/legogamestate.cpp @@ -126,7 +126,7 @@ MxResult LegoGameState::Save(MxULong p_slot) MxResult result; InfocenterState* infocenterState = (InfocenterState*) GameState()->GetState("InfocenterState"); - if (!infocenterState || infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!infocenterState || !infocenterState->HasRegistered()) { result = SUCCESS; } else { diff --git a/LEGO1/lego/legoomni/src/infocenter/infocenter.cpp b/LEGO1/lego/legoomni/src/infocenter/infocenter.cpp index 8dfc70e7..3e4e3c40 100644 --- a/LEGO1/lego/legoomni/src/infocenter/infocenter.cpp +++ b/LEGO1/lego/legoomni/src/infocenter/infocenter.cpp @@ -62,11 +62,11 @@ Infocenter::~Infocenter() MxS16 i = 0; do { - if (m_infocenterState->GetInfocenterBufferElement(i) != NULL) { - m_infocenterState->GetInfocenterBufferElement(i)->Enable(FALSE); + if (m_infocenterState->GetNameLetter(i) != NULL) { + m_infocenterState->GetNameLetter(i)->Enable(FALSE); } i++; - } while (i < m_infocenterState->GetInfocenterBufferSize()); + } while (i < m_infocenterState->GetMaxNameLength()); ControlManager()->Unregister(this); @@ -101,17 +101,17 @@ MxResult Infocenter::Create(MxDSAction& p_dsAction) } MxS16 count, i; - for (count = 0; count < m_infocenterState->GetInfocenterBufferSize(); count++) { - if (m_infocenterState->GetInfocenterBufferElement(count) == NULL) { + for (count = 0; count < m_infocenterState->GetMaxNameLength(); count++) { + if (m_infocenterState->GetNameLetter(count) == NULL) { break; } } for (i = 0; i < count; i++) { - if (m_infocenterState->GetInfocenterBufferElement(i)) { - m_infocenterState->GetInfocenterBufferElement(i)->Enable(TRUE); - m_infocenterState->GetInfocenterBufferElement(i)->SetTickleState(MxPresenter::e_repeating); - m_infocenterState->GetInfocenterBufferElement(i)->VTable0x88(((7 - count) / 2 + i) * 29 + 223, 45); + if (m_infocenterState->GetNameLetter(i)) { + m_infocenterState->GetNameLetter(i)->Enable(TRUE); + m_infocenterState->GetNameLetter(i)->SetTickleState(MxPresenter::e_repeating); + m_infocenterState->GetNameLetter(i)->VTable0x88(((7 - count) / 2 + i) * 29 + 223, 45); } } } @@ -267,7 +267,7 @@ MxLong Infocenter::HandleEndAction(MxEndActionNotificationParam& p_param) PlayAction(c_welcomeDialogue); m_currentCutscene = e_noIntro; - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_bookAnimationTimer = 1; return 1; } @@ -311,7 +311,7 @@ MxLong Infocenter::HandleEndAction(MxEndActionNotificationParam& p_param) } break; case 11: - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL && m_currentInfomainScript != c_mamaMovie && + if (!m_infocenterState->HasRegistered() && m_currentInfomainScript != c_mamaMovie && m_currentInfomainScript != c_papaMovie && m_currentInfomainScript != c_pepperMovie && m_currentInfomainScript != c_nickMovie && m_currentInfomainScript != c_lauraMovie) { m_infoManDialogueTimer = 1; @@ -355,7 +355,7 @@ void Infocenter::ReadyWorld() break; case 4: m_infocenterState->SetUnknown0x74(2); - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_bookAnimationTimer = 1; } @@ -377,7 +377,7 @@ void Infocenter::ReadyWorld() FUN_10015820(FALSE, LegoOmni::c_disableInput | LegoOmni::c_disable3d | LegoOmni::c_clearScreen); - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_bookAnimationTimer = 1; } @@ -392,7 +392,7 @@ void Infocenter::ReadyWorld() break; case 0xf: m_infocenterState->SetUnknown0x74(2); - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_bookAnimationTimer = 1; } @@ -622,7 +622,7 @@ MxLong Infocenter::HandleKeyPress(MxS8 p_key) StopCutscene(); m_infocenterState->SetUnknown0x74(1); - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_bookAnimationTimer = 1; return 1; } @@ -801,7 +801,7 @@ MxU8 Infocenter::HandleButtonUp(MxS32 p_x, MxS32 p_y) InfomainScript dialogueToPlay; if (GameState()->GetCurrentAct() == LegoGameState::e_act1) { - if (m_infocenterState->GetInfocenterBufferElement(0) == NULL) { + if (!m_infocenterState->HasRegistered()) { m_infocenterState->SetUnknown0x74(2); m_transitionDestination = LegoGameState::e_noArea; dialogueToPlay = c_registerToContinueDialogue; @@ -949,7 +949,7 @@ MxU8 Infocenter::HandleClick(LegoControlManagerEvent& p_param) break; case LegoGameState::e_unk4: if (state->GetUnknownC()) { - if (m_infocenterState->GetInfocenterBufferElement(0)) { + if (m_infocenterState->HasRegistered()) { m_infocenterState->SetUnknown0x74(5); m_transitionDestination = state->GetPreviousArea(); actionToPlay = @@ -1069,7 +1069,7 @@ MxLong Infocenter::HandleNotification0(MxNotificationParam& p_param) } case 7: if (m_infocenterState->GetUnknown0x74() == 8) { - if (m_infocenterState->GetInfocenterBufferElement(0)) { + if (m_infocenterState->HasRegistered()) { GameState()->Save(0); } @@ -1371,11 +1371,11 @@ void Infocenter::StartCredits() MxS16 i = 0; do { - if (m_infocenterState->GetInfocenterBufferElement(i) != NULL) { - m_infocenterState->GetInfocenterBufferElement(i)->Enable(FALSE); + if (m_infocenterState->GetNameLetter(i) != NULL) { + m_infocenterState->GetNameLetter(i)->Enable(FALSE); } i++; - } while (i < m_infocenterState->GetInfocenterBufferSize()); + } while (i < m_infocenterState->GetMaxNameLength()); VideoManager()->FUN_1007c520(); GetViewManager()->RemoveAll(NULL); diff --git a/LEGO1/lego/legoomni/src/infocenter/infocenterdoor.cpp b/LEGO1/lego/legoomni/src/infocenter/infocenterdoor.cpp index 536581cd..74d1cfdc 100644 --- a/LEGO1/lego/legoomni/src/infocenter/infocenterdoor.cpp +++ b/LEGO1/lego/legoomni/src/infocenter/infocenterdoor.cpp @@ -111,7 +111,7 @@ MxLong InfocenterDoor::HandleClick(LegoControlManagerEvent& p_param) case 4: if (GameState()->GetUnknownC()) { InfocenterState* state = (InfocenterState*) GameState()->GetState("InfocenterState"); - if (state->GetInfocenterBufferElement(0) != NULL) { + if (state->HasRegistered()) { m_unk0xf8 = LegoGameState::e_unk4; } else { diff --git a/LEGO1/lego/legoomni/src/infocenter/infocenterstate.cpp b/LEGO1/lego/legoomni/src/infocenter/infocenterstate.cpp index f5dd508c..0394d710 100644 --- a/LEGO1/lego/legoomni/src/infocenter/infocenterstate.cpp +++ b/LEGO1/lego/legoomni/src/infocenter/infocenterstate.cpp @@ -107,7 +107,7 @@ InfocenterState::InfocenterState() m_bricksterDialogue = LegoState::Playlist((MxU32*) g_bricksterDialogue, _countof(g_bricksterDialogue)); - memset(m_buffer, 0, sizeof(m_buffer)); + memset(m_letters, 0, sizeof(m_letters)); } // FUNCTION: LEGO1 0x10071920 @@ -115,10 +115,10 @@ InfocenterState::~InfocenterState() { MxS16 i = 0; do { - if (GetInfocenterBufferElement(i) != NULL) { - delete GetInfocenterBufferElement(i)->GetAction(); - delete GetInfocenterBufferElement(i); + if (GetNameLetter(i) != NULL) { + delete GetNameLetter(i)->GetAction(); + delete GetNameLetter(i); } i++; - } while (i < GetInfocenterBufferSize()); + } while (i < GetMaxNameLength()); }