From 444dd8afbb1d6ccd8b001143fe128d21ab3ecb11 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Tue, 26 Sep 2006 07:01:39 +0000 Subject: [PATCH] update binding --- stepmania/Themes/default/Scripts/Actor.lua | 14 +++++++------- stepmania/src/Tween.cpp | 14 ++------------ stepmania/src/Tween.h | 1 + 3 files changed, 10 insertions(+), 19 deletions(-) diff --git a/stepmania/Themes/default/Scripts/Actor.lua b/stepmania/Themes/default/Scripts/Actor.lua index 46975b5f49..7535ae1deb 100644 --- a/stepmania/Themes/default/Scripts/Actor.lua +++ b/stepmania/Themes/default/Scripts/Actor.lua @@ -1,24 +1,24 @@ function Actor:ease(t, fEase) -- Optimizations: - -- fEase = -100 is equivalent to TweenAccelerate. + -- fEase = -100 is equivalent to TweenType_Accelerate. if fEase == -100 then self:accelerate(t); return; end - -- fEase = 0 is equivalent to TweenLinear. + -- fEase = 0 is equivalent to TweenType_Linear. if fEase == 0 then self:linear(t); return; end - -- fEase = +100 is equivalent to TweenDecelerate. + -- fEase = +100 is equivalent to TweenType_Decelerate. if fEase == 100 then self:decelerate(t); return; end - self:tween( t, TweenBezier, + self:tween( t, "TweenType_Bezier", { 0, scale(fEase, -100, 100, 0/3, 2/3), @@ -36,7 +36,7 @@ local BounceBeginBezier = 1, 1 } function Actor:bouncebegin(t) - self:tween( t, TweenBezier, BounceBeginBezier ); + self:tween( t, "TweenType_Bezier", BounceBeginBezier ); end local BounceEndBezier = @@ -47,7 +47,7 @@ local BounceEndBezier = 1, 1 } function Actor:bounceend(t) - self:tween( t, TweenBezier, BounceEndBezier ); + self:tween( t, "TweenType_Bezier", BounceEndBezier ); end local SmoothBezier = @@ -55,7 +55,7 @@ local SmoothBezier = 0, 0, 1, 1 } function Actor:smooth(t) - self:tween( t, TweenBezier, SmoothBezier ); + self:tween( t, "TweenType_Bezier", SmoothBezier ); end -- Hide if b is true, but don't unhide if b is false. diff --git a/stepmania/src/Tween.cpp b/stepmania/src/Tween.cpp index c4b08ad290..859f446f43 100644 --- a/stepmania/src/Tween.cpp +++ b/stepmania/src/Tween.cpp @@ -12,17 +12,7 @@ static const char *TweenTypeNames[] = { "Spring", "Bezier" }; -XToString( TweenType, NUM_TweenType ); - -static void LuaTweenType(lua_State* L) -{ - FOREACH_TweenType( tt ) - { - RString s = TweenTypeToString( tt ); - LUA->SetGlobal( "Tween"+s, tt ); - } -} -REGISTER_WITH_LUA_FUNCTION( LuaTweenType ); +LuaXType( TweenType, NUM_TweenType, "TweenType_" ); struct TweenLinear: public ITween @@ -99,7 +89,7 @@ ITween *ITween::CreateFromType( TweenType tt ) ITween *ITween::CreateFromStack( Lua *L, int iStackPos ) { - TweenType iType = (TweenType) IArg(iStackPos); + TweenType iType = Enum::Check( L, iStackPos ); if( iType == TWEEN_BEZIER ) { luaL_checktype( L, iStackPos+1, LUA_TTABLE ); diff --git a/stepmania/src/Tween.h b/stepmania/src/Tween.h index efbfdf4033..a88916cdbb 100644 --- a/stepmania/src/Tween.h +++ b/stepmania/src/Tween.h @@ -17,6 +17,7 @@ enum TweenType TweenType_Invalid }; #define FOREACH_TweenType( tt ) FOREACH_ENUM( TweenType, NUM_TweenType, tt ) +LuaDeclareType( TweenType ); class ITween {