From 1b8b029eefeeb90be709db4711360ee00080a79a Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Fri, 22 Sep 2006 03:31:38 +0000 Subject: [PATCH] re-add "get metric as Lua expression" --- stepmania/src/ThemeManager.cpp | 11 +++++++++++ stepmania/src/ThemeManager.h | 2 ++ 2 files changed, 13 insertions(+) diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index 4802c4ff4a..ae8357098a 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -968,6 +968,17 @@ RageColor ThemeManager::GetMetricC( const RString &sClassName, const RString &sV return RunExpressionC( sValue ); } +LuaReference ThemeManager::GetMetricR( const RString &sClassName, const RString &sValueName ) +{ + RString sValue = GetMetricRaw( g_pLoadedThemeData->iniMetrics, sClassName, sValueName ); + + LuaHelpers::PrepareExpression( sValue ); + + LuaReference ref; + ref.SetFromExpression( sValue ); + return ref; +} + #if !defined(SMPACKAGE) apActorCommands ThemeManager::GetMetricA( const RString &sClassName, const RString &sValueName ) { diff --git a/stepmania/src/ThemeManager.h b/stepmania/src/ThemeManager.h index 9250cc6337..09e79ed74c 100644 --- a/stepmania/src/ThemeManager.h +++ b/stepmania/src/ThemeManager.h @@ -75,6 +75,7 @@ public: float GetMetricF( const RString &sClassName, const RString &sValueName ); bool GetMetricB( const RString &sClassName, const RString &sValueName ); RageColor GetMetricC( const RString &sClassName, const RString &sValueName ); + LuaReference GetMetricR( const RString &sClassName, const RString &sValueName ); #if !defined(SMPACKAGE) apActorCommands GetMetricA( const RString &sClassName, const RString &sValueName ); #endif @@ -84,6 +85,7 @@ public: void GetMetric( const RString &sClassName, const RString &sValueName, float &valueOut ) { valueOut = GetMetricF( sClassName, sValueName ); } void GetMetric( const RString &sClassName, const RString &sValueName, bool &valueOut ) { valueOut = GetMetricB( sClassName, sValueName ); } void GetMetric( const RString &sClassName, const RString &sValueName, RageColor &valueOut ) { valueOut = GetMetricC( sClassName, sValueName ); } + void GetMetric( const RString &sClassName, const RString &sValueName, LuaReference &valueOut ) { valueOut = GetMetricR( sClassName, sValueName ); } #if !defined(SMPACKAGE) void GetMetric( const RString &sClassName, const RString &sValueName, apActorCommands &valueOut ); #endif