From 50de3a1f2ddfe11d7f466638fb0d5be7ca90a9b0 Mon Sep 17 00:00:00 2001 From: x0rbl <46559321+x0rbl@users.noreply.github.com> Date: Tue, 11 Feb 2020 12:15:16 -0800 Subject: [PATCH] Fix two disqualification bugs: C-mods and rate mods now properly disqualify (#1965) --- src/GameState.cpp | 6 ++++++ src/Steps.cpp | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/GameState.cpp b/src/GameState.cpp index febaf7b235..be32f36790 100644 --- a/src/GameState.cpp +++ b/src/GameState.cpp @@ -1915,6 +1915,12 @@ bool GameState::CurrentOptionsDisqualifyPlayer( PlayerNumber pn ) return false; const PlayerOptions &po = m_pPlayerState[pn]->m_PlayerOptions.GetPreferred(); + const SongOptions &so = m_SongOptions.GetPreferred(); + + // Playing a song/course at a slower music rate should disqualify score. -x0rbl + if (so.m_fMusicRate < 1.0) { + return true; + } // Check the stored player options for disqualify. Don't disqualify because // of mods that were forced. diff --git a/src/Steps.cpp b/src/Steps.cpp index 8b6643dfc9..38129a57c7 100644 --- a/src/Steps.cpp +++ b/src/Steps.cpp @@ -595,7 +595,9 @@ bool Steps::HasSignificantTimingChanges() const if( timing->HasBpmChanges() ) { // check to see if these changes are significant. - if( (GetMaxBPM() - GetMinBPM()) > 3.000f ) + DisplayBpms bpms; + m_pSong->GetDisplayBpms(bpms); + if (bpms.GetMax() - bpms.GetMin() > 3.000f) return true; }