From a53fe4ef0e10f9a9d79e7dde093f0ac10a3e0bc6 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Mon, 21 Oct 2002 02:32:06 +0000 Subject: [PATCH] Don't allow switching of pages on SelectDifficulty after one player has made a choice. --- stepmania/src/ScreenSelectDifficulty.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/stepmania/src/ScreenSelectDifficulty.cpp b/stepmania/src/ScreenSelectDifficulty.cpp index d77bb49ebc..c95e995729 100644 --- a/stepmania/src/ScreenSelectDifficulty.cpp +++ b/stepmania/src/ScreenSelectDifficulty.cpp @@ -325,6 +325,14 @@ void ScreenSelectDifficulty::ChangeTo( PlayerNumber pn, int iSelectionWas, int i bool bSelectedSomethingOnPage1 = iSelectionIs < 3; bool bSelectedSomethingOnPage2 = iSelectionIs >= 3; + bool bSomeoneMadeAChoice = false; + for( int p=0; pIsPlayerEnabled(p) && m_bChosen[p] ) + bSomeoneMadeAChoice = true; + + if( bSomeoneMadeAChoice && (bChangedPagesFrom1To2 || bChangedPagesFrom2To1) ) + return; // don't allow changing pages after one player has chosen + if( bSelectedSomethingOnPage2 ) { // change both players @@ -358,7 +366,7 @@ void ScreenSelectDifficulty::ChangeTo( PlayerNumber pn, int iSelectionWas, int i m_framePages.SetTweenX( bSelectedSomethingOnPage1 ? 0.0f : -SCREEN_WIDTH ); } - for( int p=0; p