From 18d77b900379a3510eed4182b9f0858d7f545eb2 Mon Sep 17 00:00:00 2001 From: Steve Checkoway Date: Wed, 15 Aug 2007 03:00:39 +0000 Subject: [PATCH] Let the theme decide how many colors for the rainbow. --- stepmania/src/BitmapText.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/stepmania/src/BitmapText.cpp b/stepmania/src/BitmapText.cpp index 96ad1c9dd5..f47832a5bb 100644 --- a/stepmania/src/BitmapText.cpp +++ b/stepmania/src/BitmapText.cpp @@ -26,10 +26,10 @@ REGISTER_ACTOR_CLASS( BitmapText ) * Better, we could go all the way, drop all of the actor-specific font aliases, * and do "font=header2;valign=top;...". */ +#define NUM_RAINBOW_COLORS THEME->GetMetricI("BitmapText","NumRainbowColors") #define RAINBOW_COLOR(n) THEME->GetMetricC("BitmapText",ssprintf("RainbowColor%i", n+1)) -static const int NUM_RAINBOW_COLORS = 7; -static RageColor RAINBOW_COLORS[NUM_RAINBOW_COLORS]; +static vector RAINBOW_COLORS; BitmapText::BitmapText() { @@ -37,7 +37,8 @@ BitmapText::BitmapText() static int iReloadCounter = 0; if( iReloadCounter%20==0 ) { - for( int i = 0; i < NUM_RAINBOW_COLORS; ++i ) + RAINBOW_COLORS.resize( NUM_RAINBOW_COLORS ); + for( unsigned i = 0; i < RAINBOW_COLORS.size(); ++i ) RAINBOW_COLORS[i] = RAINBOW_COLOR(i); } iReloadCounter++; @@ -533,14 +534,14 @@ void BitmapText::DrawPrimitives() // if( m_bRainbowScroll ) { - int color_index = int(RageTimer::GetTimeSinceStartFast() / 0.200) % NUM_RAINBOW_COLORS; + int color_index = int(RageTimer::GetTimeSinceStartFast() / 0.200) % RAINBOW_COLORS.size(); for( unsigned i=0; i