From f0526147ee6b77e4ae2f8cbf87936aa6de892d74 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Fri, 28 Mar 2008 16:23:13 +0000 Subject: [PATCH] move constants to metrics --- stepmania/src/RollingNumbers.cpp | 21 ++++++--------------- stepmania/src/RollingNumbers.h | 14 ++++---------- 2 files changed, 10 insertions(+), 25 deletions(-) diff --git a/stepmania/src/RollingNumbers.cpp b/stepmania/src/RollingNumbers.cpp index ccd9158e87..06a83cca6c 100644 --- a/stepmania/src/RollingNumbers.cpp +++ b/stepmania/src/RollingNumbers.cpp @@ -9,25 +9,15 @@ REGISTER_ACTOR_CLASS( RollingNumbers ) RollingNumbers::RollingNumbers() { - m_sFormat = "%9.0f"; - m_fApproachSeconds = 0.2f; - m_fCurrentNumber = 0; m_fTargetNumber = 0; m_fScoreVelocity = 0; } -void RollingNumbers::LoadFromNode( const XNode* pNode ) +void RollingNumbers::Load( const RString &sMetricsGroup ) { - BitmapText::LoadFromNode( pNode ); - - pNode->GetAttrValue( "Format", m_sFormat ); - ThemeManager::EvaluateString( m_sFormat ); - pNode->GetAttrValue( "ApproachSeconds", m_fApproachSeconds ); - - float fTargetNumber; - if( pNode->GetAttrValue( "TargetNumber", fTargetNumber ) ) - SetTargetNumber( fTargetNumber ); + TEXT_FORMAT.Load(sMetricsGroup, "TextFormat"); + APPROACH_SECONDS.Load(sMetricsGroup, "ApproachSeconds"); UpdateText(); } @@ -48,12 +38,13 @@ void RollingNumbers::SetTargetNumber( float fTargetNumber ) if( fTargetNumber == m_fTargetNumber ) // no change return; m_fTargetNumber = fTargetNumber; - m_fScoreVelocity = (m_fTargetNumber-m_fCurrentNumber) / m_fApproachSeconds; + m_fScoreVelocity = (m_fTargetNumber-m_fCurrentNumber) / APPROACH_SECONDS.GetValue(); } void RollingNumbers::UpdateText() { - SetText( ssprintf(m_sFormat, m_fCurrentNumber) ); + RString s = ssprintf( TEXT_FORMAT.GetValue(), m_fCurrentNumber ); + SetText( s ); } // lua start diff --git a/stepmania/src/RollingNumbers.h b/stepmania/src/RollingNumbers.h index e73f7ed871..58c2d66838 100644 --- a/stepmania/src/RollingNumbers.h +++ b/stepmania/src/RollingNumbers.h @@ -4,13 +4,14 @@ #define RollingNumbers_H #include "BitmapText.h" +#include "ThemeMetric.h" class RollingNumbers : public BitmapText { public: RollingNumbers(); - void LoadFromNode( const XNode* pNode ); + void Load( const RString &sMetricsGroup ); virtual RollingNumbers *Copy() const; virtual void Update( float fDeltaTime ); @@ -25,16 +26,9 @@ public: virtual void PushSelf( lua_State *L ); private: - // Loaded attributes - // - // Time between the call to SetTargetNumber and m_fCurrentNumber == - // m_fTargetNumber. Used to calculate m_fScoreVelocity. - float m_fApproachSeconds; - RString m_sFormat; + ThemeMetric TEXT_FORMAT; + ThemeMetric APPROACH_SECONDS; - // - // Calculated - // float m_fCurrentNumber; // currently showing this float m_fTargetNumber; // approach this float m_fScoreVelocity; // approach target at this speed