From 12e49744a1c81b31cfbbcf4e1384f40e3a863b18 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Sun, 11 Jan 2004 07:18:51 +0000 Subject: [PATCH] add metric to disable roulette on menu timer --- stepmania/Themes/default/metrics.ini | 1 + stepmania/src/ScreenSelectMusic.cpp | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index e72b72e4e3..d38509dad4 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -747,6 +747,7 @@ NextOptionsScreenOni=ScreenPlayerOptions NextOptionsScreenEndless=ScreenPlayerOptions NextOptionsScreenBattle=ScreenPlayerOptions NextOptionsScreenRave=ScreenRaveOptions +DoRouletteOnMenuTimer=1 [ScreenEz2SelectMusic] UseModeSwitcher=0 diff --git a/stepmania/src/ScreenSelectMusic.cpp b/stepmania/src/ScreenSelectMusic.cpp index 9d3712d237..66eb7c8765 100644 --- a/stepmania/src/ScreenSelectMusic.cpp +++ b/stepmania/src/ScreenSelectMusic.cpp @@ -58,6 +58,7 @@ const int NUM_SCORE_DIGITS = 9; #define NEXT_OPTIONS_SCREEN( play_mode ) THEME->GetMetric ("ScreenSelectMusic","NextOptionsScreen"+Capitalize(PlayModeToString(play_mode))) #define SCORE_SORT_CHANGE_COMMAND(i) THEME->GetMetric ("ScreenSelectMusic",ssprintf("ScoreP%iSortChangeCommand", i+1)) #define SCORE_FRAME_SORT_CHANGE_COMMAND(i) THEME->GetMetric ("ScreenSelectMusic",ssprintf("ScoreFrameP%iSortChangeCommand", i+1)) +#define DO_ROULETTE_ON_MENU_TIMER THEME->GetMetricB("ScreenSelectMusic","DoRouletteOnMenuTimer") static const ScreenMessage SM_AllowOptionsMenuRepeat = ScreenMessage(SM_User+1); CString g_sFallbackCDTitlePath; @@ -814,14 +815,23 @@ void ScreenSelectMusic::HandleScreenMessage( const ScreenMessage SM ) m_Menu.m_MenuTimer->SetSeconds( 15 ); m_Menu.m_MenuTimer->Start(); } - else if( m_MusicWheel.GetSelectedType() != TYPE_SONG ) + else if( DO_ROULETTE_ON_MENU_TIMER ) { - m_MusicWheel.StartRoulette(); - m_Menu.m_MenuTimer->SetSeconds( 15 ); - m_Menu.m_MenuTimer->Start(); + if( m_MusicWheel.GetSelectedType() != TYPE_SONG ) + { + m_MusicWheel.StartRoulette(); + m_Menu.m_MenuTimer->SetSeconds( 15 ); + m_Menu.m_MenuTimer->Start(); + } + else + { + MenuStart(PLAYER_INVALID); + } } else { + if( m_MusicWheel.GetSelectedType() != TYPE_SONG ) + m_MusicWheel.StartRandom(); MenuStart(PLAYER_INVALID); } break;