Add theme metrics OptionsListTimeout and SelectMenuName, Broadcast SongChosen and SelectMenuInput messages.

This commit is contained in:
Colby Klein
2009-12-15 09:59:51 +00:00
parent 8e50cdd5f5
commit 4dc8949d68
2 changed files with 22 additions and 3 deletions
+20 -3
View File
@@ -56,6 +56,7 @@ static bool g_bBannerWaiting = false;
static bool g_bSampleMusicWaiting = false;
static RageTimer g_StartedLoadingAt(RageZeroTimer);
static RageTimer g_ScreenStartedLoadingAt(RageZeroTimer);
RageTimer g_CanOpenOptionsList(RageZeroTimer);
REGISTER_SCREEN_CLASS( ScreenSelectMusic );
void ScreenSelectMusic::Init()
@@ -81,6 +82,8 @@ void ScreenSelectMusic::Init()
MODE_MENU_AVAILABLE.Load( m_sName, "ModeMenuAvailable" );
USE_OPTIONS_LIST.Load( m_sName, "UseOptionsList" );
USE_PLAYER_SELECT_MENU.Load( m_sName, "UsePlayerSelectMenu" );
SELECT_MENU_NAME.Load( m_sName, "SelectMenuScreenName" );
OPTIONS_LIST_TIMEOUT.Load( m_sName, "OptionsListTimeout" );
SELECT_MENU_CHANGES_DIFFICULTY.Load( m_sName, "SelectMenuChangesDifficulty" );
TWO_PART_SELECTION.Load( m_sName, "TwoPartSelection" );
TWO_PART_CONFIRMS_ONLY.Load( m_sName, "TwoPartConfirmsOnly" );
@@ -445,7 +448,7 @@ void ScreenSelectMusic::Input( const InputEventPlus &input )
{
if( input.type == IET_RELEASE && input.MenuI == GAME_BUTTON_SELECT )
{
SCREENMAN->AddNewScreenToTop( "ScreenPlayerOptions", SM_BackFromPlayerOptions );
SCREENMAN->AddNewScreenToTop( SELECT_MENU_NAME, SM_BackFromPlayerOptions );
}
}
@@ -501,9 +504,21 @@ void ScreenSelectMusic::Input( const InputEventPlus &input )
break;
}
}
// return;
else if( input.type == IET_FIRST_PRESS && input.MenuI != GAME_BUTTON_SELECT )
{
Message msg("SelectMenuInput");
msg.SetParam( "Player", input.pn );
msg.SetParam( "Button", GameButtonToString(INPUTMAPPER->GetInputScheme(), input.MenuI) );
MESSAGEMAN->Broadcast( msg );
m_bAcceptSelectRelease[input.pn] = false;
}
if( input.type == IET_FIRST_PRESS )
g_CanOpenOptionsList.Touch();
if( g_CanOpenOptionsList.Ago() > OPTIONS_LIST_TIMEOUT )
m_bAcceptSelectRelease[input.pn] = false;
return;
}
if( m_SelectionState == SelectionState_SelectingSong &&
(input.MenuI == m_GameButtonNextSong || input.MenuI == m_GameButtonPreviousSong || input.MenuI == GAME_BUTTON_SELECT) )
{
@@ -964,6 +979,8 @@ void ScreenSelectMusic::MenuStart( const InputEventPlus &input )
return;
}
MESSAGEMAN->Broadcast("SongChosen");
break;
case SelectionState_SelectingSteps:
+2
View File
@@ -83,7 +83,9 @@ protected:
ThemeMetric<bool> SELECT_MENU_AVAILABLE;
ThemeMetric<bool> MODE_MENU_AVAILABLE;
ThemeMetric<bool> USE_OPTIONS_LIST;
ThemeMetric<float> OPTIONS_LIST_TIMEOUT;
ThemeMetric<bool> USE_PLAYER_SELECT_MENU;
ThemeMetric<RString> SELECT_MENU_NAME;
ThemeMetric<bool> SELECT_MENU_CHANGES_DIFFICULTY;
ThemeMetric<bool> TWO_PART_SELECTION;