diff --git a/Docs/Changelog_sm5.txt b/Docs/Changelog_sm5.txt index fad6cbd8e3..7c23e67d14 100644 --- a/Docs/Changelog_sm5.txt +++ b/Docs/Changelog_sm5.txt @@ -4,6 +4,10 @@ The StepMania 5 Changelog covers all post-sm-ssc changes. For a list of changes from StepMania 4 alpha 5 to sm-ssc v1.2.5, see Changelog_sm-ssc.txt. ________________________________________________________________________________ +2012/05/16 +---------- +* [ScreenWithMenuElements] Added DelayMusicSeconds metric. + 2012/05/14 ---------- * [Course] Added AllSongsAreFixed() Lua binding. diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index d59611d896..631d525f25 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -1578,6 +1578,7 @@ TimerSeconds=-1 FirstUpdateCommand= PlayMusic=true MusicAlignBeat=true +DelayMusicSeconds=0 StopMusicOnBack=false WaitForChildrenBeforeTweeningOut=false CancelTransitionsOut=false diff --git a/src/ScreenWithMenuElements.cpp b/src/ScreenWithMenuElements.cpp index 8377a5fb75..0db311fd6d 100644 --- a/src/ScreenWithMenuElements.cpp +++ b/src/ScreenWithMenuElements.cpp @@ -31,6 +31,7 @@ void ScreenWithMenuElements::Init() { PLAY_MUSIC.Load( m_sName, "PlayMusic" ); MUSIC_ALIGN_BEAT.Load( m_sName, "MusicAlignBeat" ); + DELAY_MUSIC_SECONDS.Load( m_sName, "DelayMusicSeconds" ); CANCEL_TRANSITIONS_OUT.Load( m_sName, "CancelTransitionsOut" ); TIMER_SECONDS.Load( m_sName, "TimerSeconds" ); TIMER_METRICS_GROUP.Load( m_sName, "TimerMetricsGroup" ); @@ -217,7 +218,11 @@ void ScreenWithMenuElements::StartPlayingMusic() { pmp.sFile = sMusicPathFromLua; pmp.bAlignBeat = MUSIC_ALIGN_BEAT; + // TODO: load other params into pmp here -aj + if( DELAY_MUSIC_SECONDS > 0.0f ) + pmp.fStartSecond = -DELAY_MUSIC_SECONDS; + SOUND->PlayMusic( pmp ); } else @@ -238,6 +243,10 @@ void ScreenWithMenuElements::StartPlayingMusic() { pmp.sFile = m_sPathToMusic; pmp.bAlignBeat = MUSIC_ALIGN_BEAT; + + if( DELAY_MUSIC_SECONDS > 0.0f ) + pmp.fStartSecond = -DELAY_MUSIC_SECONDS; + SOUND->PlayMusic( pmp ); } } diff --git a/src/ScreenWithMenuElements.h b/src/ScreenWithMenuElements.h index 6027387120..a671e9cfd9 100644 --- a/src/ScreenWithMenuElements.h +++ b/src/ScreenWithMenuElements.h @@ -49,6 +49,7 @@ protected: ThemeMetric PLAY_MUSIC; ThemeMetric MUSIC_ALIGN_BEAT; + ThemeMetric DELAY_MUSIC_SECONDS; ThemeMetric CANCEL_TRANSITIONS_OUT; ThemeMetric TIMER_SECONDS; ThemeMetric TIMER_METRICS_GROUP;