diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index 50fb0692cb..43a9390337 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -135,6 +135,7 @@ BrakeModMinClamp=-400 BrakeModMaxClamp=400 WaveModMagnitude=20 WaveModHeight=38 +BoomerangPeakPercentage=0.75 QuantizeArrowYPosition=false [Background] diff --git a/src/ArrowEffects.cpp b/src/ArrowEffects.cpp index 35cbef5ea4..343f58a73b 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 BOOMERANG_PEAK_PERCENTAGE( "ArrowEffects", "BoomerangPeakPercentage" ); static ThemeMetric QUANTIZE_ARROW_Y( "ArrowEffects", "QuantizeArrowYPosition"); static float GetNoteFieldHeight( const PlayerState* pPlayerState ) @@ -242,7 +243,7 @@ float ArrowEffects::GetYOffset( const PlayerState* pPlayerState, int iCol, float // Factor in boomerang if( fAccels[PlayerOptions::ACCEL_BOOMERANG] != 0 ) { - float fPeakAtYOffset = SCREEN_HEIGHT * 0.75f; // zero point of boomerang function + float fPeakAtYOffset = SCREEN_HEIGHT * BOOMERANG_PEAK_PERCENTAGE; // zero point of boomerang function fPeakYOffsetOut = (-1*fPeakAtYOffset*fPeakAtYOffset/SCREEN_HEIGHT) + 1.5f*fPeakAtYOffset; bIsPastPeakOut = fYOffset < fPeakAtYOffset;