From 2038606a304c03c9becb0b8c3d662ef09d2cd73d Mon Sep 17 00:00:00 2001 From: Jason Felds Date: Sun, 3 Jul 2011 13:43:30 -0400 Subject: [PATCH] New metric, MModHighCap. Can fix Tsuhsuixamush. Set to 0 or less to remove the cap. --- Docs/Changelog_sm5.txt | 7 +++++++ Themes/_fallback/metrics.ini | 1 + src/Player.cpp | 10 +++++++++- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/Docs/Changelog_sm5.txt b/Docs/Changelog_sm5.txt index afdff2311e..c853815376 100644 --- a/Docs/Changelog_sm5.txt +++ b/Docs/Changelog_sm5.txt @@ -8,6 +8,13 @@ ________________________________________________________________________________ StepMania 5.0 Preview 2 | 201107?? -------------------------------------------------------------------------------- +2011/07/03 +---------- +* [Player] Bring mMods from OpenITG over. Also, a metric was added, + "MModHighCap", to cap the speed mod if required for playing songs like + Tsuhsuixamush. Set the metric to 0 or less to remove the cap. [AJ, sharksoda, + Wolfman2000] + 2011/07/02 ---------- * [ScreenEdit] Fixed a crash when hitting Enter in the F1 help menu. [AJ] diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index af36d73f66..f7dea506c8 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -1101,6 +1101,7 @@ ComboStoppedAt=50 AttackRunTimeRandom=6 AttackRunTimeMine=7 BattleRaveMirror=true +MModHighCap=600 [PlayerOptions] RandomSpeedChance=0.2 diff --git a/src/Player.cpp b/src/Player.cpp index 5ce14eb675..9bd6c79efe 100644 --- a/src/Player.cpp +++ b/src/Player.cpp @@ -201,6 +201,12 @@ ThemeMetric COMBO_STOPPED_AT ( "Player", "ComboStoppedAt" ); ThemeMetric ATTACK_RUN_TIME_RANDOM ( "Player", "AttackRunTimeRandom" ); ThemeMetric ATTACK_RUN_TIME_MINE ( "Player", "AttackRunTimeMine" ); +/** + * @brief What is our highest cap for mMods? + * + * If set to 0 or less, assume the song takes over. */ +ThemeMetric M_MOD_HIGH_CAP("Player", "MModHighCap"); + /** @brief Will battle modes have their steps mirrored or kept the same? */ ThemeMetric BATTLE_RAVE_MIRROR ( "Player", "BattleRaveMirror" ); @@ -432,7 +438,9 @@ void Player::Init( // if the BPMs are < 0, reset and get the actual values. if( !bpms.IsSecret() ) { - fMaxBPM = bpms.GetMaxWithin(600); + fMaxBPM = (M_MOD_HIGH_CAP > 0 ? + bpms.GetMaxWithin(M_MOD_HIGH_CAP) : + bpms.GetMax()); fMaxBPM = max( 0, fMaxBPM ); }