From 3919e302d0ea5ef26466b00dfd6416d4f2b8a96f Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Mon, 16 Feb 2004 09:11:25 +0000 Subject: [PATCH] fix SongFinished being called twice, causing bogus radar results --- stepmania/src/ScreenGameplay.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/stepmania/src/ScreenGameplay.cpp b/stepmania/src/ScreenGameplay.cpp index 3266679e5c..eed65a36a5 100644 --- a/stepmania/src/ScreenGameplay.cpp +++ b/stepmania/src/ScreenGameplay.cpp @@ -2071,9 +2071,10 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) { m_bChangedOffsetOrBPM = false; ShowSavePrompt( SM_GoToScreenAfterBack ); + break; } - else - HandleScreenMessage( SM_GoToScreenAfterBack ); + + HandleScreenMessage( SM_GoToScreenAfterBack ); break; case SM_GoToScreenAfterBack: @@ -2086,9 +2087,6 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) break; case SM_GoToStateAfterCleared: - SongFinished(); - StageFinished(); - if( m_bChangedOffsetOrBPM ) { m_bChangedOffsetOrBPM = false; @@ -2096,6 +2094,9 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) break; } + SongFinished(); + StageFinished(); + SCREENMAN->SetNewScreen( NEXT_SCREEN(GAMESTATE->m_PlayMode) ); break; @@ -2143,9 +2144,6 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) break; case SM_GoToScreenAfterFail: - SongFinished(); - StageFinished(); - if( m_bChangedOffsetOrBPM ) { m_bChangedOffsetOrBPM = false; @@ -2153,6 +2151,9 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) break; } + SongFinished(); + StageFinished(); + switch( GAMESTATE->m_PlayMode ) { case PLAY_MODE_ARCADE: