diff --git a/Docs/Changelog_sm-ssc.txt b/Docs/Changelog_sm-ssc.txt index 1da0949d3b..c1fdc64179 100644 --- a/Docs/Changelog_sm-ssc.txt +++ b/Docs/Changelog_sm-ssc.txt @@ -18,6 +18,7 @@ sm-ssc v1.2.1 | 201102?? * [ScreenOptionsMemoryCard] Added three strings: "(no label)", "size ???", and "%dMB". [AJ] * [ScreenSelectMusic] Added RouletteTimerSeconds metric. [AJ] +* [ArrowEffects] Added QuantizeArrowYPosition metric. [AJ] 20110208 -------- diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index 14c136beda..7ff7c1449c 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -135,6 +135,7 @@ BrakeModMinClamp=-400 BrakeModMaxClamp=400 WaveModMagnitude=20 WaveModHeight=38 +QuantizeArrowYPosition=false [Background] # Background stuff. again, its usually a better idea to leave this alone diff --git a/src/ArrowEffects.cpp b/src/ArrowEffects.cpp index a5753ec4f7..35cbef5ea4 100644 --- a/src/ArrowEffects.cpp +++ b/src/ArrowEffects.cpp @@ -23,6 +23,7 @@ static ThemeMetric BRAKE_MOD_MIN_CLAMP( "ArrowEffects", "BrakeModMinClamp static ThemeMetric BRAKE_MOD_MAX_CLAMP( "ArrowEffects", "BrakeModMaxClamp" ); static ThemeMetric WAVE_MOD_MAGNITUDE( "ArrowEffects", "WaveModMagnitude" ); static ThemeMetric WAVE_MOD_HEIGHT( "ArrowEffects", "WaveModHeight" ); +static ThemeMetric QUANTIZE_ARROW_Y( "ArrowEffects", "QuantizeArrowYPosition"); static float GetNoteFieldHeight( const PlayerState* pPlayerState ) { @@ -318,9 +319,8 @@ float ArrowEffects::GetYPos( const PlayerState* pPlayerState, int iCol, float fY // In beware's DDR Extreme-focused fork of StepMania 3.9, this value is // floored, making arrows show on integer Y coordinates. Supposedly it makes // the arrows look better, but testing needs to be done. - // todo: make this a noteskin metric ("QuantizeArrowYPosition") -aj - return f; - //return floor(f); + // todo: make this a noteskin metric instead of a theme metric? -aj + return QUANTIZE_ARROW_Y ? floor(f) : f; } float ArrowEffects::GetYOffsetFromYPos( const PlayerState* pPlayerState, int iCol, float YPos, float fYReverseOffsetPixels )