From 7147b00e37a81141aae045c7c210c36822a53d96 Mon Sep 17 00:00:00 2001 From: Jason Felds Date: Sat, 12 Feb 2011 01:23:01 -0500 Subject: [PATCH] Tipsy can be modified now. --- Themes/_fallback/metrics.ini | 6 ++++++ src/ArrowEffects.cpp | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index a0819220ea..11c32cc713 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -145,6 +145,12 @@ ExpandSpeedScaleFromLow=0 ExpandSpeedScaleFromHigh=1 ExpandSpeedScaleToLow=1 # No need for the high here: that is already calculated in code. +TipsyTimerFrequency=1.2 +TipsyColumnFrequency=1.8 +TipsyArrowMagnitude=0.4 +TipsyOffsetTimerFrequency=1.2 +TipsyOffsetColumnFrequency=2 +TipsyOffsetArrowMagnitude=0.4 QuantizeArrowYPosition=false [Background] diff --git a/src/ArrowEffects.cpp b/src/ArrowEffects.cpp index 4c598f6904..9684a78f56 100644 --- a/src/ArrowEffects.cpp +++ b/src/ArrowEffects.cpp @@ -32,6 +32,12 @@ static ThemeMetric EXPAND_MULTIPLIER_SCALE_TO_HIGH( "ArrowEffects", "Expa static ThemeMetric EXPAND_SPEED_SCALE_FROM_LOW( "ArrowEffects", "ExpandSpeedScaleFromLow" ); static ThemeMetric EXPAND_SPEED_SCALE_FROM_HIGH( "ArrowEffects", "ExpandSpeedScaleFromHigh" ); static ThemeMetric EXPAND_SPEED_SCALE_TO_LOW( "ArrowEffects", "ExpandSpeedScaleToLow" ); +static ThemeMetric TIPSY_TIMER_FREQUENCY( "ArrowEffects", "TipsyTimerFrequency" ); +static ThemeMetric TIPSY_COLUMN_FREQUENCY( "ArrowEffects", "TipsyColumnFrequency" ); +static ThemeMetric TIPSY_ARROW_MAGNITUDE( "ArrowEffects", "TipsyArrowMagnitude" ); +static ThemeMetric TIPSY_OFFSET_TIMER_FREQUENCY( "ArrowEffects", "TipsyOffsetTimerFrequency" ); +static ThemeMetric TIPSY_OFFSET_COLUMN_FREQUENCY( "ArrowEffects", "TipsyOffsetColumnFrequency" ); +static ThemeMetric TIPSY_OFFSET_ARROW_MAGNITUDE( "ArrowEffects", "TipsyOffsetArrowMagnitude" ); static ThemeMetric QUANTIZE_ARROW_Y( "ArrowEffects", "QuantizeArrowYPosition"); static float GetNoteFieldHeight( const PlayerState* pPlayerState ) @@ -327,7 +333,9 @@ float ArrowEffects::GetYPos( const PlayerState* pPlayerState, int iCol, float fY const float* fEffects = pPlayerState->m_PlayerOptions.GetCurrent().m_fEffects; if( fEffects[PlayerOptions::EFFECT_TIPSY] != 0 ) - f += fEffects[PlayerOptions::EFFECT_TIPSY] * ( RageFastCos( RageTimer::GetTimeSinceStartFast()*1.2f + iCol*1.8f) * ARROW_SIZE*0.4f ); + f += fEffects[PlayerOptions::EFFECT_TIPSY] + * ( RageFastCos( RageTimer::GetTimeSinceStartFast()*TIPSY_TIMER_FREQUENCY + + iCol*TIPSY_COLUMN_FREQUENCY) * ARROW_SIZE*TIPSY_ARROW_MAGNITUDE ); // 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 @@ -342,7 +350,9 @@ float ArrowEffects::GetYOffsetFromYPos( const PlayerState* pPlayerState, int iCo const float* fEffects = pPlayerState->m_PlayerOptions.GetCurrent().m_fEffects; if( fEffects[PlayerOptions::EFFECT_TIPSY] != 0 ) - f -= fEffects[PlayerOptions::EFFECT_TIPSY] * ( RageFastCos( RageTimer::GetTimeSinceStartFast()*1.2f + iCol*2.f) * ARROW_SIZE*0.4f ); + f -= fEffects[PlayerOptions::EFFECT_TIPSY] + * ( RageFastCos( RageTimer::GetTimeSinceStartFast()*TIPSY_OFFSET_TIMER_FREQUENCY + + iCol*TIPSY_OFFSET_COLUMN_FREQUENCY) * ARROW_SIZE*TIPSY_OFFSET_ARROW_MAGNITUDE ); float fShift, fScale; ArrowGetReverseShiftAndScale( pPlayerState, iCol, fYReverseOffsetPixels, fShift, fScale );