|
|
@@ -96,8 +96,8 @@ INLINE bool AudioManager::get_loop(AudioSound* sound) {
|
|
|
// in the universe and it constructs itself.
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
INLINE AudioManager::AudioManager(void) {
|
|
|
- _sfx_active = audio_sfx_active;
|
|
|
- _music_active = audio_music_active;
|
|
|
+ _sfx_active = _hard_sfx_active = audio_sfx_active;
|
|
|
+ _music_active = _hard_music_active = audio_music_active;
|
|
|
_master_sfx_volume = audio_master_sfx_volume;
|
|
|
_master_music_volume = audio_master_music_volume;
|
|
|
}
|
|
|
@@ -164,7 +164,11 @@ INLINE bool AudioManager::get_all_sound_active(void) {
|
|
|
// Description: turn on/off SFX
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
INLINE void AudioManager::set_sfx_active(bool f) {
|
|
|
- AudioManager::_sfx_active = f;
|
|
|
+ if (f) {
|
|
|
+ if (AudioManager::_hard_sfx_active)
|
|
|
+ AudioManager::_sfx_active = f;
|
|
|
+ } else
|
|
|
+ AudioManager::_sfx_active = f;
|
|
|
}
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
@@ -173,7 +177,11 @@ INLINE void AudioManager::set_sfx_active(bool f) {
|
|
|
// Description: turn on/off music
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
INLINE void AudioManager::set_music_active(bool f) {
|
|
|
- AudioManager::_music_active = f;
|
|
|
+ if (f) {
|
|
|
+ if (AudioManager::_hard_music_active)
|
|
|
+ AudioManager::_music_active = f;
|
|
|
+ } else
|
|
|
+ AudioManager::_music_active = f;
|
|
|
}
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
@@ -193,3 +201,25 @@ INLINE bool AudioManager::get_sfx_active(void) {
|
|
|
INLINE bool AudioManager::get_music_active(void) {
|
|
|
return AudioManager::_music_active;
|
|
|
}
|
|
|
+
|
|
|
+////////////////////////////////////////////////////////////////////
|
|
|
+// Function: AudioManager::set_hard_sfx_active
|
|
|
+// Access: Public, Static
|
|
|
+// Description: set the hardware availability state for SFX
|
|
|
+////////////////////////////////////////////////////////////////////
|
|
|
+INLINE void AudioManager::set_hard_sfx_active(bool f) {
|
|
|
+ AudioManager::_hard_sfx_active = f;
|
|
|
+ if (!f)
|
|
|
+ AudioManager::_sfx_active = f;
|
|
|
+}
|
|
|
+
|
|
|
+////////////////////////////////////////////////////////////////////
|
|
|
+// Function: AudioManager::set_hard_music_active
|
|
|
+// Access: Public, Static
|
|
|
+// Description: set the hardware availability state for music
|
|
|
+////////////////////////////////////////////////////////////////////
|
|
|
+INLINE void AudioManager::set_hard_music_active(bool f) {
|
|
|
+ AudioManager::_hard_music_active = f;
|
|
|
+ if (!f)
|
|
|
+ AudioManager::_music_active = f;
|
|
|
+}
|