mirror of
https://github.com/isledecomp/isle-portable.git
synced 2025-02-16 19:50:52 -05:00
parent
b7e274f902
commit
a28113a26f
2 changed files with 30 additions and 25 deletions
|
@ -56,16 +56,16 @@ private:
|
|||
MxResult OpenMusic(MxAtomId& p_script);
|
||||
void DestroyMusic();
|
||||
|
||||
MxBool m_musicEnabled; // 0x08
|
||||
MxDSAction m_action1; // 0x0c
|
||||
MxAudioPresenter* m_unk0xa0;
|
||||
MxDSAction m_action2; // 0xa4
|
||||
MxAudioPresenter* m_unk0x138;
|
||||
MxS32 m_unk0x13c;
|
||||
MxS32 m_unk0x140;
|
||||
MxS32 m_targetVolume;
|
||||
MxS16 m_unk0x148;
|
||||
MxAtomId m_script;
|
||||
MxBool m_musicEnabled; // 0x08
|
||||
MxDSAction m_action1; // 0x0c
|
||||
MxAudioPresenter* m_unk0xa0; // 0xa0
|
||||
MxDSAction m_action2; // 0xa4
|
||||
MxAudioPresenter* m_unk0x138; // 0x138
|
||||
MxS32 m_unk0x13c; // 0x13c
|
||||
MxS32 m_unk0x140; // 0x140
|
||||
MxS32 m_targetVolume; // 0x144
|
||||
MxS16 m_unk0x148; // 0x148
|
||||
MxAtomId m_script; // 0x14c
|
||||
};
|
||||
|
||||
#endif // MXBACKGROUNDAUDIOMANAGER_H
|
||||
|
|
|
@ -80,16 +80,15 @@ MxResult MxBackgroundAudioManager::Tickle()
|
|||
switch (m_unk0x13c) {
|
||||
case MxPresenter::e_starting:
|
||||
FadeInOrFadeOut();
|
||||
return SUCCESS;
|
||||
break;
|
||||
case MxPresenter::e_streaming:
|
||||
FUN_1007ee70();
|
||||
return SUCCESS;
|
||||
break;
|
||||
case MxPresenter::e_repeating:
|
||||
FUN_1007ef40();
|
||||
return SUCCESS;
|
||||
default:
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1007ee70
|
||||
|
@ -112,19 +111,23 @@ void MxBackgroundAudioManager::FUN_1007ee70()
|
|||
// FUNCTION: LEGO1 0x1007ef40
|
||||
void MxBackgroundAudioManager::FUN_1007ef40()
|
||||
{
|
||||
MxU32 compare;
|
||||
MxU32 volume;
|
||||
MxS32 compare, volume;
|
||||
|
||||
if (m_unk0xa0 == NULL) {
|
||||
if (m_unk0x138) {
|
||||
compare = 30;
|
||||
if (m_unk0x148 == 0) {
|
||||
compare = m_unk0x148;
|
||||
if (m_unk0x148 != 0) {
|
||||
compare = 30;
|
||||
}
|
||||
else {
|
||||
compare = m_targetVolume;
|
||||
}
|
||||
|
||||
volume = m_unk0x138->GetVolume();
|
||||
if (volume < compare) {
|
||||
if (m_unk0x140 + m_unk0x138->GetVolume() <= compare) {
|
||||
compare = m_unk0x140 + compare;
|
||||
compare = m_unk0x140 + m_unk0x138->GetVolume();
|
||||
}
|
||||
|
||||
m_unk0x138->SetVolume(compare);
|
||||
}
|
||||
else {
|
||||
|
@ -143,12 +146,14 @@ void MxBackgroundAudioManager::FUN_1007ef40()
|
|||
DeleteObject(*m_unk0xa0->GetAction());
|
||||
}
|
||||
else {
|
||||
compare = m_unk0xa0->GetVolume();
|
||||
volume = 0;
|
||||
if (compare != m_unk0x140 && -1 < compare - m_unk0x140) {
|
||||
if (m_unk0xa0->GetVolume() - m_unk0x140 > 0) {
|
||||
volume = m_unk0xa0->GetVolume() - m_unk0x140;
|
||||
}
|
||||
m_unk0x138->SetVolume(volume);
|
||||
else {
|
||||
volume = 0;
|
||||
}
|
||||
|
||||
m_unk0xa0->SetVolume(volume);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue