From f8b3a17c6f05daa8e3093438b4bd934c3c2cddaa Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Fri, 22 Sep 2006 19:05:56 +0000 Subject: [PATCH] split out ThemeManager::PushMetric --- stepmania/src/ThemeManager.cpp | 9 ++++++--- stepmania/src/ThemeManager.h | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index 642efb8670..6ca91ae16d 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -975,12 +975,10 @@ LuaReference ThemeManager::GetMetricR( const RString &sClassName, const RString return ref; } -void ThemeManager::GetMetric( const RString &sClassName, const RString &sValueName, LuaReference &valueOut ) +void ThemeManager::PushMetric( Lua *L, const RString &sClassName, const RString &sValueName ) { RString sValue = GetMetricRaw( g_pLoadedThemeData->iniMetrics, sClassName, sValueName ); - Lua *L = LUA->Get(); - if( EndsWith(sValueName, "Command") ) { ActorUtil::ParseActorCommands( L, sValue ); @@ -990,7 +988,12 @@ void ThemeManager::GetMetric( const RString &sClassName, const RString &sValueNa LuaHelpers::PrepareExpression( sValue ); LuaHelpers::RunExpression( L, sValue ); } +} +void ThemeManager::GetMetric( const RString &sClassName, const RString &sValueName, LuaReference &valueOut ) +{ + Lua *L = LUA->Get(); + PushMetric( L, sClassName, sValueName ); valueOut.SetFromStack( L ); LUA->Release( L ); } diff --git a/stepmania/src/ThemeManager.h b/stepmania/src/ThemeManager.h index 3d8ac80326..a74e49af01 100644 --- a/stepmania/src/ThemeManager.h +++ b/stepmania/src/ThemeManager.h @@ -70,6 +70,7 @@ public: void ClearThemePathCache(); bool HasMetric( const RString &sClassName, const RString &sValueName ); + void PushMetric( Lua *L, const RString &sClassName, const RString &sValueName ); RString GetMetric( const RString &sClassName, const RString &sValueName ); int GetMetricI( const RString &sClassName, const RString &sValueName ); float GetMetricF( const RString &sClassName, const RString &sValueName );