diff --git a/stepmania/src/Player.cpp b/stepmania/src/Player.cpp index f6328b2f6a..4f8af91076 100644 --- a/stepmania/src/Player.cpp +++ b/stepmania/src/Player.cpp @@ -831,9 +831,16 @@ void PlayerMinus::HandleTapRowScore( unsigned row ) int &iCurCombo = GAMESTATE->m_CurStageStats.iCurCombo[m_PlayerNumber]; switch( scoreOfLastTap ) { + case TNS_MARVELOUS: + case TNS_PERFECT: + case TNS_GREAT: + GAMESTATE->m_CurStageStats.iCurMissCombo[m_PlayerNumber] = 0; + break; + case TNS_MISS: + ++GAMESTATE->m_CurStageStats.iCurMissCombo[m_PlayerNumber]; + case TNS_GOOD: case TNS_BOO: - case TNS_MISS: if( iCurCombo > 50 ) SCREENMAN->PostMessageToTopScreen( SM_ComboStopped, 0 ); diff --git a/stepmania/src/StageStats.cpp b/stepmania/src/StageStats.cpp index abec94e3b6..2f5d0218b0 100644 --- a/stepmania/src/StageStats.cpp +++ b/stepmania/src/StageStats.cpp @@ -45,6 +45,7 @@ void StageStats::AddStats( const StageStats& other ) iHoldNoteScores[p][h] += other.iHoldNoteScores[p][h]; iCurCombo[p] += other.iCurCombo[p]; iMaxCombo[p] += other.iMaxCombo[p]; + iCurMissCombo[p] += other.iCurMissCombo[p]; iScore[p] += other.iScore[p]; for( int r=0; r