From 08e2147e0a8a5d474d31237632bc54b4a7aebf65 Mon Sep 17 00:00:00 2001 From: AJ Kelly Date: Thu, 6 May 2010 10:42:52 -0500 Subject: [PATCH] [ScreenSelectMusic] Make it so changing difficulty also cancels TwoPartSelection if TwoPartConfirmsOnly. --- src/ScreenSelectMusic.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/ScreenSelectMusic.cpp b/src/ScreenSelectMusic.cpp index 971d714635..7af22df0d7 100644 --- a/src/ScreenSelectMusic.cpp +++ b/src/ScreenSelectMusic.cpp @@ -619,7 +619,7 @@ void ScreenSelectMusic::Input( const InputEventPlus &input ) // mainline sm4 then -aj if(TWO_PART_CONFIRMS_ONLY) { - if( m_SelectionState == SelectionState_SelectingSteps) + if( m_SelectionState == SelectionState_SelectingSteps ) { if( input.MenuI == m_GameButtonPreviousSong ) { @@ -1307,6 +1307,13 @@ void ScreenSelectMusic::MenuBack( const InputEventPlus &input ) void ScreenSelectMusic::AfterStepsOrTrailChange( const vector &vpns ) { + if(TWO_PART_CONFIRMS_ONLY && m_SelectionState == SelectionState_SelectingSteps) + { + // if TWO_PART_CONFIRMS_ONLY, changing difficulties unsets the song. -aj + m_SelectionState = SelectionState_SelectingSong; + MESSAGEMAN->Broadcast("TwoPartConfirmCanceled"); + } + FOREACH_CONST( PlayerNumber, vpns, p ) { PlayerNumber pn = *p; @@ -1350,6 +1357,11 @@ void ScreenSelectMusic::AfterStepsOrTrailChange( const vector &vpn m_textHighScore[pn].SetText( ssprintf("%*i", NUM_SCORE_DIGITS, iScore) ); } + else + { + // I don't like how numbers just stay up there if the current + // selection is NULL. -aj + } } }