diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 378b1501cf..d5fbfad6d0 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -3270,3 +3270,5 @@ Test InputDefault= Test Input,1=screen,ScreenTestInput Test InputName,1=Test Input +[FadingBanner] +FadeSeconds=0.25 diff --git a/stepmania/src/FadingBanner.cpp b/stepmania/src/FadingBanner.cpp index 864c206900..1c6e0b4ee1 100644 --- a/stepmania/src/FadingBanner.cpp +++ b/stepmania/src/FadingBanner.cpp @@ -22,10 +22,15 @@ #include "SongManager.h" /* XXX: metric */ -static const float FadeTime = 0.25; +CachedThemeMetricF FADE_SECONDS ("FadingBanner","FadeSeconds"); +CachedThemeMetricF MW_SWITCH_SECONDS ("MusicWheel","SwitchSeconds"); + FadingBanner::FadingBanner() { + FADE_SECONDS.Refresh(); + MW_SWITCH_SECONDS.Refresh(); + m_bMovingFast = false; m_iIndexFront = 0; for( int i=0; i<2; i++ ) @@ -43,11 +48,11 @@ void FadingBanner::Update( float fDeltaTime ) ActorFrame::Update( fDeltaTime ); /* Don't fade to the full banner until we finish fading. */ - float HighQualTime = FadeTime; + float HighQualTime = FADE_SECONDS; /* Hacky: also don't fade until the music wheel has a chance to settle down. */ HighQualTime = max( HighQualTime, 1.0f / PREFSMAN->m_iMusicWheelSwitchSpeed ); - HighQualTime = max( HighQualTime, THEME->GetMetricF("MusicWheel","SwitchSeconds") ); + HighQualTime = max( HighQualTime, (float)MW_SWITCH_SECONDS ); if( m_sPendingBanner == "" || m_PendingTimer.PeekDeltaTime() < HighQualTime ) return; @@ -81,7 +86,7 @@ void FadingBanner::BeforeChange() m_Banner[m_iIndexFront].SetDiffuse( RageColor(1,1,1,1) ); m_Banner[m_iIndexFront].StopTweening(); - m_Banner[m_iIndexFront].BeginTweening( FadeTime ); // fade out + m_Banner[m_iIndexFront].BeginTweening( FADE_SECONDS ); // fade out m_Banner[m_iIndexFront].SetDiffuse( RageColor(1,1,1,0) ); m_sPendingBanner = ""; diff --git a/stepmania/src/MusicWheel.cpp b/stepmania/src/MusicWheel.cpp index 2ca7e54250..e7a7b30d84 100644 --- a/stepmania/src/MusicWheel.cpp +++ b/stepmania/src/MusicWheel.cpp @@ -35,7 +35,7 @@ #define FADE_SECONDS THEME->GetMetricF("MusicWheel","FadeSeconds") -#define SWITCH_SECONDS THEME->GetMetricF("MusicWheel","SwitchSeconds") +CachedThemeMetricF SWITCH_SECONDS ("MusicWheel","SwitchSeconds"); #define ROULETTE_SWITCH_SECONDS THEME->GetMetricF("MusicWheel","RouletteSwitchSeconds") #define ROULETTE_SLOW_DOWN_SWITCHES THEME->GetMetricI("MusicWheel","RouletteSlowDownSwitches") #define LOCKED_INITIAL_VELOCITY THEME->GetMetricF("MusicWheel","LockedInitialVelocity") @@ -85,6 +85,7 @@ MusicWheel::MusicWheel() SONGMAN->UpdateRankingCourses(); // update theme metric cache + SWITCH_SECONDS.Refresh(); ITEM_CURVE_X.Refresh(); ITEM_SPACING_Y.Refresh(); USE_3D.Refresh();