From 4ef0bc548b913cadd4eb011ee4ef72f8ee0dc504 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Tue, 12 Dec 2006 10:31:16 +0000 Subject: [PATCH] move LifeChange from Preference to Metrics --- stepmania/src/LifeMeterBar.cpp | 41 ++++++++++------------------------ 1 file changed, 12 insertions(+), 29 deletions(-) diff --git a/stepmania/src/LifeMeterBar.cpp b/stepmania/src/LifeMeterBar.cpp index 224037943b..fc6710d27f 100644 --- a/stepmania/src/LifeMeterBar.cpp +++ b/stepmania/src/LifeMeterBar.cpp @@ -16,25 +16,8 @@ #include "Steps.h" #include "Course.h" -static void LifePercentChangeInit( size_t /*ScoreEvent*/ i, RString &sNameOut, float &defaultValueOut ) -{ - sNameOut = "LifePercentChange" + ScoreEventToString( (ScoreEvent)i ); - switch( i ) - { - DEFAULT_FAIL( int(i) ); - case SE_W1: defaultValueOut = +0.008f; break; - case SE_W2: defaultValueOut = +0.008f; break; - case SE_W3: defaultValueOut = +0.004f; break; - case SE_W4: defaultValueOut = +0.000f; break; - case SE_W5: defaultValueOut = -0.040f; break; - case SE_Miss: defaultValueOut = -0.080f; break; - case SE_HitMine: defaultValueOut = -0.160f; break; - case SE_Held: defaultValueOut = +0.008f; break; - case SE_LetGo: defaultValueOut = -0.080f; break; - } -} - -static Preference1D g_fLifePercentChange( LifePercentChangeInit, NUM_ScoreEvent ); +static RString LIFE_PERCENT_CHANGE_NAME( size_t i ) { return "LifePercentChange" + ScoreEventToString( (ScoreEvent)i ); } +static ThemeMetric1D g_fLifePercentChange( "LifeMeterBar", LIFE_PERCENT_CHANGE_NAME, NUM_ScoreEvent ); static ThemeMetric METER_WIDTH ("LifeMeterBar","MeterWidth"); static ThemeMetric METER_HEIGHT ("LifeMeterBar","MeterHeight"); @@ -144,13 +127,13 @@ void LifeMeterBar::ChangeLife( TapNoteScore score ) switch( score ) { DEFAULT_FAIL( score ); - case TNS_W1: fDeltaLife = g_fLifePercentChange[SE_W1]; break; - case TNS_W2: fDeltaLife = g_fLifePercentChange[SE_W2]; break; - case TNS_W3: fDeltaLife = g_fLifePercentChange[SE_W3]; break; - case TNS_W4: fDeltaLife = g_fLifePercentChange[SE_W4]; break; - case TNS_W5: fDeltaLife = g_fLifePercentChange[SE_W5]; break; - case TNS_Miss: fDeltaLife = g_fLifePercentChange[SE_Miss]; break; - case TNS_HitMine: fDeltaLife = g_fLifePercentChange[SE_HitMine]; break; + case TNS_W1: fDeltaLife = g_fLifePercentChange.GetValue(SE_W1); break; + case TNS_W2: fDeltaLife = g_fLifePercentChange.GetValue(SE_W2); break; + case TNS_W3: fDeltaLife = g_fLifePercentChange.GetValue(SE_W3); break; + case TNS_W4: fDeltaLife = g_fLifePercentChange.GetValue(SE_W4); break; + case TNS_W5: fDeltaLife = g_fLifePercentChange.GetValue(SE_W5); break; + case TNS_Miss: fDeltaLife = g_fLifePercentChange.GetValue(SE_Miss); break; + case TNS_HitMine: fDeltaLife = g_fLifePercentChange.GetValue(SE_HitMine); break; } if( IsHot() && score < TNS_W4 ) fDeltaLife = -0.10f; // make it take a while to get back to "hot" @@ -182,8 +165,8 @@ void LifeMeterBar::ChangeLife( HoldNoteScore score, TapNoteScore tscore ) case SongOptions::DRAIN_NORMAL: switch( score ) { - case HNS_Held: fDeltaLife = g_fLifePercentChange[SE_Held]; break; - case HNS_LetGo: fDeltaLife = g_fLifePercentChange[SE_LetGo]; break; + case HNS_Held: fDeltaLife = g_fLifePercentChange.GetValue(SE_Held); break; + case HNS_LetGo: fDeltaLife = g_fLifePercentChange.GetValue(SE_LetGo); break; default: ASSERT(0); } @@ -194,7 +177,7 @@ void LifeMeterBar::ChangeLife( HoldNoteScore score, TapNoteScore tscore ) switch( score ) { case HNS_Held: fDeltaLife = +0.000f; break; - case HNS_LetGo: fDeltaLife = g_fLifePercentChange[SE_LetGo]; break; + case HNS_LetGo: fDeltaLife = g_fLifePercentChange.GetValue(SE_LetGo); break; default: ASSERT(0); }