From c6f958c77c523d43b4849394be9062731ae5dec0 Mon Sep 17 00:00:00 2001 From: TheRedDaemon <66257843+TheRedDaemon@users.noreply.github.com> Date: Thu, 11 Jun 2026 21:50:48 +0200 Subject: [PATCH] reimplement: SHC_3BB0A8C1_0x0047A580 100% --- .../Audio/mss/SoundSystem/meth_0x47a580.cpp | 27 +++++++++++++++++++ status/addresses-SHC-3BB0A8C1.txt | 4 +-- 2 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 src/OpenSHC/Audio/mss/SoundSystem/meth_0x47a580.cpp diff --git a/src/OpenSHC/Audio/mss/SoundSystem/meth_0x47a580.cpp b/src/OpenSHC/Audio/mss/SoundSystem/meth_0x47a580.cpp new file mode 100644 index 0000000..271d854 --- /dev/null +++ b/src/OpenSHC/Audio/mss/SoundSystem/meth_0x47a580.cpp @@ -0,0 +1,27 @@ +#include "../SoundSystem.func.hpp" + +#include "OpenSHC/Globals/DAT_SoundEffectsHelperData1.hpp" + +namespace OpenSHC { +namespace Audio { + namespace MSS { + + // FUNCTION: STRONGHOLDCRUSADER 0x0047A580 + void SoundSystem::meth_0x47a580() + { + if (DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.field0_0x0 == 5 + && DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.field6_0x18 == 0 + && DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.troopValueLevel != 0 + && DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.musicTracker == 0 + && DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.volumeLevel != 1 + && DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.field7_0x1c == 0) { + DAT_SoundEffectsHelperData1::ptr->SEC_Section1079.musicTracker = 1; + MACRO_CALL_MEMBER(SoundSystem_Func::setSomeSoundTime, this)(); + MACRO_CALL_MEMBER(SoundSystem_Func::setupVolumeAndSoundIDWithMultiplier, this)( + DE::SHCDE::MUSIC_TUNE_BATTLE_L2_GLORY1, 100); + } + } + + } +} +} diff --git a/status/addresses-SHC-3BB0A8C1.txt b/status/addresses-SHC-3BB0A8C1.txt index 5bf99ba..a7b04ad 100644 --- a/status/addresses-SHC-3BB0A8C1.txt +++ b/status/addresses-SHC-3BB0A8C1.txt @@ -10907,8 +10907,8 @@ SHC_3BB0A8C1_0x0047A55C | 0.0% | Pending SHC_3BB0A8C1_0x0047A560 | 0.0% | Pending SHC_3BB0A8C1_0x0047A564 | 0.0% | Pending SHC_3BB0A8C1_0x0047A570 | 100.0% | Reimplemented -SHC_3BB0A8C1_0x0047A580 | 0.0% | Pending -SHC_3BB0A8C1_0x0047A5E0 | 100.0% | Pending +SHC_3BB0A8C1_0x0047A580 | 100.0% | Reimplemented +SHC_3BB0A8C1_0x0047A5E0 | 100.0% | Reimplemented SHC_3BB0A8C1_0x0047A630 | 0.0% | Pending SHC_3BB0A8C1_0x0047A660 | 0.0% | Pending SHC_3BB0A8C1_0x0047A690 | 0.0% | Pending