diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index de96b1ddaf..d9d2e15257 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -4426,6 +4426,8 @@ ComboAboveThresholdAddsToScoreBonus=0 ComboScoreBonusThreshold=50 ComboScoreBonusValue=+1000 +ComboMultiplier=0.0 + DoubleNoteScoreMultiplier=1.0 TripleNoteScoreMultiplier=1.0 QuadOrHigherNoteScoreMultiplier=1.0 diff --git a/stepmania/src/ScoreKeeperNormal.cpp b/stepmania/src/ScoreKeeperNormal.cpp index 45a10c448e..8581026220 100644 --- a/stepmania/src/ScoreKeeperNormal.cpp +++ b/stepmania/src/ScoreKeeperNormal.cpp @@ -83,6 +83,7 @@ void ScoreKeeperNormal::Load( m_MinScoreToMaintainCombo.Load( "Gameplay", "MinScoreToMaintainCombo" ); // Custom Scoring + m_CustomComboMultiplier.Load( "CustomScoring", "ComboMultiplier" ); m_CustomTNS_W1.Load( "CustomScoring", "PointsW1" ); m_CustomTNS_W2.Load( "CustomScoring", "PointsW2" ); m_CustomTNS_W3.Load( "CustomScoring", "PointsW3" ); @@ -478,6 +479,8 @@ void ScoreKeeperNormal::AddScoreInternal( TapNoteScore score ) p += m_CustomComboBonusValue; } + p += m_pPlayerStageStats->m_iCurCombo * m_CustomComboMultiplier; + if( m_iNumNotesHitThisRow == 2 ) p = (int)(p * m_DoubleNoteMultiplier); else if( m_iNumNotesHitThisRow == 3 ) diff --git a/stepmania/src/ScoreKeeperNormal.h b/stepmania/src/ScoreKeeperNormal.h index 955a3006c0..410d498cbb 100644 --- a/stepmania/src/ScoreKeeperNormal.h +++ b/stepmania/src/ScoreKeeperNormal.h @@ -56,6 +56,7 @@ class ScoreKeeperNormal: public ScoreKeeper ThemeMetric m_DoubleNoteMultiplier; ThemeMetric m_TripleNoteMultiplier; ThemeMetric m_QuadPlusNoteMultiplier; + ThemeMetric m_CustomComboMultiplier; vector m_apSteps;