float PrefsManager::GetSoundVolumeAttract() { // fallback to regular volume if -1 if( m_fSoundVolumeAttract == -1 ) return GetSoundVolume(); return m_fSoundVolumeAttract; }
//------------------------------------------------------------------------- // 功能: 播放循环音效 //------------------------------------------------------------------------- void KObj::PlayLoopSound() { if (!m_szSoundName[0]) return; m_pSoundNode = (KCacheNode*) g_SoundCache.GetNode(m_szSoundName, (KCacheNode * )m_pSoundNode); m_pWave = (KWavSound*)m_pSoundNode->m_lpData; if (m_pWave) { if (!m_pWave->IsPlaying()) { m_pWave->Play(GetSoundPan(), GetSoundVolume(), 0); } else { m_pWave->SetPan(GetSoundPan()); m_pWave->SetVolume(GetSoundVolume()); } } }
//------------------------------------------------------------------------- // 功能: 播放随机音效 //------------------------------------------------------------------------- void KObj::PlayRandSound() { if (!m_szSoundName[0]) return; if (g_Random(500) != 0) return; m_pSoundNode = (KCacheNode*) g_SoundCache.GetNode(m_szSoundName, (KCacheNode * )m_pSoundNode); m_pWave = (KWavSound*)m_pSoundNode->m_lpData; if (m_pWave) { if (m_pWave->IsPlaying()) return; m_pWave->Play(GetSoundPan(), GetSoundVolume(), 0); } }