diff --git a/stepmania/src/OptionsList.cpp b/stepmania/src/OptionsList.cpp index a6bd80cd01..4747818011 100644 --- a/stepmania/src/OptionsList.cpp +++ b/stepmania/src/OptionsList.cpp @@ -123,8 +123,10 @@ OptionsList::~OptionsList() delete hand->second; } -void OptionsList::Load( RString sType ) +void OptionsList::Load( RString sType, PlayerNumber pn ) { + m_pn = pn; + m_Cursor.Load( THEME->GetPathG(sType, "cursor") ); m_Cursor->SetName( "Cursor" ); ActorUtil::LoadAllCommands( *m_Cursor, sType ); @@ -343,11 +345,11 @@ void OptionsList::ImportRow( RString sRow ) { vector aSelections[NUM_PLAYERS]; vector vpns; - vpns.push_back(PLAYER_1); // XXX + vpns.push_back( m_pn ); // XXX OptionRowHandler *pHandler = m_Rows[sRow]; - aSelections[PLAYER_1].resize( pHandler->m_Def.m_vsChoices.size() ); + aSelections[ m_pn ].resize( pHandler->m_Def.m_vsChoices.size() ); pHandler->ImportOption( vpns, aSelections ); - m_bSelections[sRow] = aSelections[PLAYER_1]; + m_bSelections[sRow] = aSelections[ m_pn ]; if( RowIsMenusOnly(sRow) ) fill( m_bSelections[sRow].begin(), m_bSelections[sRow].end(), false ); @@ -359,10 +361,10 @@ void OptionsList::ExportRow( RString sRow ) return; vector aSelections[NUM_PLAYERS]; - aSelections[PLAYER_1] = m_bSelections[sRow]; + aSelections[m_pn] = m_bSelections[sRow]; vector vpns; - vpns.push_back(PLAYER_1); // XXX + vpns.push_back( m_pn ); // XXX m_Rows[sRow]->ExportOption( vpns, aSelections ); } diff --git a/stepmania/src/OptionsList.h b/stepmania/src/OptionsList.h index 28315f5769..aa22929d29 100644 --- a/stepmania/src/OptionsList.h +++ b/stepmania/src/OptionsList.h @@ -36,7 +36,7 @@ public: OptionsList(); ~OptionsList(); - void Load( RString sType ); + void Load( RString sType, PlayerNumber pn ); /* Show the top-level menu. */ void Open(); @@ -66,6 +66,7 @@ private: map m_Rows; map > m_bSelections; + PlayerNumber m_pn; AutoActor m_Cursor; OptionListRow m_Row[2]; int m_iCurrentRow; diff --git a/stepmania/src/ScreenSelectMusic.cpp b/stepmania/src/ScreenSelectMusic.cpp index 509f6e8e78..ccd692b61e 100644 --- a/stepmania/src/ScreenSelectMusic.cpp +++ b/stepmania/src/ScreenSelectMusic.cpp @@ -132,7 +132,7 @@ void ScreenSelectMusic::Init() FOREACH_PlayerNumber(p) { m_OptionsList[p].SetName( "OptionsList" + PlayerNumberToString(p) ); - m_OptionsList[p].Load( "OptionsList" ); + m_OptionsList[p].Load( "OptionsList", p ); m_OptionsList[p].SetDrawOrder( 100 ); ActorUtil::LoadAllCommands( m_OptionsList[p], m_sName ); this->AddChild( &m_OptionsList[p] );