mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-28 02:44:18 +00:00
Implement/match Act2Brick (#1169)
* Implement/match Act2Brick * Rename functions * Naming
This commit is contained in:
committed by
GitHub
parent
816bfe842d
commit
b9a1da6a7a
@@ -14,14 +14,14 @@ LegoCacheSoundManager::~LegoCacheSoundManager()
|
||||
while (!m_set.empty()) {
|
||||
sound = (*m_set.begin()).GetSound();
|
||||
m_set.erase(m_set.begin());
|
||||
sound->FUN_10006b80();
|
||||
sound->Stop();
|
||||
delete sound;
|
||||
}
|
||||
|
||||
while (!m_list.empty()) {
|
||||
sound = (*m_list.begin()).GetSound();
|
||||
m_list.erase(m_list.begin());
|
||||
sound->FUN_10006b80();
|
||||
sound->Stop();
|
||||
// DECOMP: delete should not be inlined here
|
||||
delete sound;
|
||||
}
|
||||
@@ -51,7 +51,7 @@ MxResult LegoCacheSoundManager::Tickle()
|
||||
listIter++;
|
||||
}
|
||||
else {
|
||||
sound->FUN_10006b80();
|
||||
sound->Stop();
|
||||
m_list.erase(listIter++);
|
||||
delete sound;
|
||||
}
|
||||
@@ -132,6 +132,40 @@ LegoCacheSound* LegoCacheSoundManager::Play(LegoCacheSound* p_sound, const char*
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1003db80
|
||||
// FUNCTION: BETA10 0x100656a7
|
||||
void LegoCacheSoundManager::Stop(LegoCacheSound*& p_sound)
|
||||
{
|
||||
#ifdef COMPAT_MODE
|
||||
Set100d6b4c::iterator setIter;
|
||||
for (setIter = m_set.begin(); setIter != m_set.end(); setIter++) {
|
||||
#else
|
||||
for (Set100d6b4c::iterator setIter = m_set.begin(); setIter != m_set.end(); setIter++) {
|
||||
#endif
|
||||
if ((*setIter).GetSound() == p_sound) {
|
||||
p_sound->Stop();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef COMPAT_MODE
|
||||
List100d6b4c::iterator listIter;
|
||||
for (listIter = m_list.begin();; listIter++) {
|
||||
#else
|
||||
for (List100d6b4c::iterator listIter = m_list.begin();; listIter++) {
|
||||
#endif
|
||||
if (listIter == m_list.end()) {
|
||||
return;
|
||||
}
|
||||
|
||||
LegoCacheSound* sound = (*listIter).GetSound();
|
||||
if (sound == p_sound) {
|
||||
p_sound->Stop();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1003dc40
|
||||
void LegoCacheSoundManager::Destroy(LegoCacheSound*& p_sound)
|
||||
{
|
||||
@@ -142,7 +176,7 @@ void LegoCacheSoundManager::Destroy(LegoCacheSound*& p_sound)
|
||||
for (Set100d6b4c::iterator setIter = m_set.begin(); setIter != m_set.end(); setIter++) {
|
||||
#endif
|
||||
if ((*setIter).GetSound() == p_sound) {
|
||||
p_sound->FUN_10006b80();
|
||||
p_sound->Stop();
|
||||
|
||||
delete p_sound;
|
||||
m_set.erase(setIter);
|
||||
@@ -162,7 +196,7 @@ void LegoCacheSoundManager::Destroy(LegoCacheSound*& p_sound)
|
||||
|
||||
LegoCacheSound* sound = (*listIter).GetSound();
|
||||
if (sound == p_sound) {
|
||||
p_sound->FUN_10006b80();
|
||||
p_sound->Stop();
|
||||
|
||||
delete sound;
|
||||
m_list.erase(listIter);
|
||||
|
||||
@@ -181,7 +181,7 @@ MxResult LegoCacheSound::Play(const char* p_name, MxBool p_looping)
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10006b80
|
||||
void LegoCacheSound::FUN_10006b80()
|
||||
void LegoCacheSound::Stop()
|
||||
{
|
||||
DWORD dwStatus;
|
||||
m_dsBuffer->GetStatus(&dwStatus);
|
||||
|
||||
Reference in New Issue
Block a user