diff --git a/src/Steps.cpp b/src/Steps.cpp index 530cc22996..be878fee68 100644 --- a/src/Steps.cpp +++ b/src/Steps.cpp @@ -459,6 +459,17 @@ void Steps::Decompress(bool isGameplay) } } +bool Steps::IsRecalcValid() { + if (m_StepsType != StepsType_dance_single) + return false; + + TimingData* td = GetTimingData(); + if (td->HasWarps()) + return false; + + return true; +} + float Steps::GetMSD(float x, int i) const { int idx = static_cast(x * 10) - 7; CLAMP(idx, 0, 13); // prevent crashes due to people setting rate mod below 0.7 or above 2.0 somehow - mina diff --git a/src/Steps.h b/src/Steps.h index b1b095d002..13d4ba16e9 100644 --- a/src/Steps.h +++ b/src/Steps.h @@ -182,7 +182,7 @@ class Steps map SortSkillsetsAtRate(float x, bool includeoverall); // this is bugged and returns true for files with negative bpms when it shouldn't - mina - bool IsRecalcValid() { GetTimingData()->NegStopAndBPMCheck(); return m_StepsType != StepsType_dance_single && GetTimingData()->HasWarps() && GetTimingData()->ValidSequentialAssumption; } + bool IsRecalcValid(); // prolly needs an enum or something idk - mina float GetMSD(float x, int i) const;