From 386de4e74c4a33bdbabded2642d416117d921336 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Sat, 11 Jun 2005 10:53:16 +0000 Subject: [PATCH] use enum for attract sound frequency --- stepmania/src/GameState.cpp | 10 ++-------- stepmania/src/Preference.cpp | 1 + stepmania/src/PrefsManager.cpp | 2 +- stepmania/src/PrefsManager.h | 3 ++- stepmania/src/ScreenOptionsMasterPrefs.cpp | 2 +- 5 files changed, 7 insertions(+), 11 deletions(-) diff --git a/stepmania/src/GameState.cpp b/stepmania/src/GameState.cpp index f0c2238944..1d1b18c78d 100644 --- a/stepmania/src/GameState.cpp +++ b/stepmania/src/GameState.cpp @@ -1720,17 +1720,11 @@ bool GameState::OneIsHot() const bool GameState::IsTimeToPlayAttractSounds() { - // if m_iNumTimesThroughAttract is negative, play attract sounds regardless - // of m_iAttractSoundFrequency. - if( m_iNumTimesThroughAttract<0 ) - return true; - - // 0 means "never play sound". Avoid a divide by 0 below. - if( PREFSMAN->m_iAttractSoundFrequency == 0 ) + if( PREFSMAN->m_AttractSoundFrequency == PrefsManager::ASF_NEVER ) return false; // play attract sounds once every m_iAttractSoundFrequency times through - if( (m_iNumTimesThroughAttract % PREFSMAN->m_iAttractSoundFrequency)==0 ) + if( (m_iNumTimesThroughAttract % PREFSMAN->m_AttractSoundFrequency)==0 ) return true; return false; diff --git a/stepmania/src/Preference.cpp b/stepmania/src/Preference.cpp index 46d94b7eb3..6717f7fb33 100644 --- a/stepmania/src/Preference.cpp +++ b/stepmania/src/Preference.cpp @@ -68,6 +68,7 @@ READFROM_AND_WRITETO( PrefsManager::CourseSortOrders, int& ) READFROM_AND_WRITETO( PrefsManager::GetRankingName, int& ) READFROM_AND_WRITETO( PrefsManager::ScoringTypes, int& ) READFROM_AND_WRITETO( PrefsManager::BoostAppPriority, int& ) +READFROM_AND_WRITETO( PrefsManager::AttractSoundFrequency, int& ) READFROM_AND_WRITETO( PlayerController, int& ) READFROM_AND_WRITETO( RageSoundReader_Resample::ResampleQuality, int& ) diff --git a/stepmania/src/PrefsManager.cpp b/stepmania/src/PrefsManager.cpp index 28aab3169c..40ca8401bd 100644 --- a/stepmania/src/PrefsManager.cpp +++ b/stepmania/src/PrefsManager.cpp @@ -241,7 +241,7 @@ PrefsManager::PrefsManager() : m_iCenterImageTranslateY ( "CenterImageTranslateY", 0 ), m_fCenterImageAddWidth ( "CenterImageAddWidth", 0 ), m_fCenterImageAddHeight ( "CenterImageAddHeight", 0 ), - m_iAttractSoundFrequency ( "AttractSoundFrequency", 1 ), + m_AttractSoundFrequency ( "AttractSoundFrequency", ASF_EVERY_TIME ), m_bAllowExtraStage ( "AllowExtraStage", true ), m_bHideDefaultNoteSkin ( "HideDefaultNoteSkin", false ), m_iMaxHighScoresPerListForMachine ( "MaxHighScoresPerListForMachine", 10 ), diff --git a/stepmania/src/PrefsManager.h b/stepmania/src/PrefsManager.h index 50a7747fbc..c13e6baeba 100644 --- a/stepmania/src/PrefsManager.h +++ b/stepmania/src/PrefsManager.h @@ -226,7 +226,8 @@ public: Preference m_iCenterImageTranslateY; Preference m_fCenterImageAddWidth; Preference m_fCenterImageAddHeight; - Preference m_iAttractSoundFrequency; // 0 = never, 1 = every time + enum AttractSoundFrequency { ASF_NEVER, ASF_EVERY_TIME, ASF_EVERY_2_TIMES, ASF_EVERY_3_TIMES, ASF_EVERY_4_TIMES, ASF_EVERY_5_TIMES }; + Preference m_AttractSoundFrequency; Preference m_bAllowExtraStage; Preference m_bHideDefaultNoteSkin; Preference m_iMaxHighScoresPerListForMachine; diff --git a/stepmania/src/ScreenOptionsMasterPrefs.cpp b/stepmania/src/ScreenOptionsMasterPrefs.cpp index 4e2c1ac260..24a3076bf9 100644 --- a/stepmania/src/ScreenOptionsMasterPrefs.cpp +++ b/stepmania/src/ScreenOptionsMasterPrefs.cpp @@ -495,7 +495,7 @@ static void AspectRatio( int &sel, bool ToSel, const ConfOption *pConfOption ) /* Sound options */ MOVE( ResamplingQuality, PREFSMAN->m_SoundResampleQuality ); -MOVE( AttractSoundFrequency,PREFSMAN->m_iAttractSoundFrequency ); +MOVE( AttractSoundFrequency,PREFSMAN->m_AttractSoundFrequency ); static void SoundVolume( int &sel, bool ToSel, const ConfOption *pConfOption ) {