update binding

This commit is contained in:
Glenn Maynard
2006-09-26 07:01:39 +00:00
parent 5595cd0443
commit 444dd8afbb
3 changed files with 10 additions and 19 deletions
+7 -7
View File
@@ -1,24 +1,24 @@
function Actor:ease(t, fEase) function Actor:ease(t, fEase)
-- Optimizations: -- Optimizations:
-- fEase = -100 is equivalent to TweenAccelerate. -- fEase = -100 is equivalent to TweenType_Accelerate.
if fEase == -100 then if fEase == -100 then
self:accelerate(t); self:accelerate(t);
return; return;
end end
-- fEase = 0 is equivalent to TweenLinear. -- fEase = 0 is equivalent to TweenType_Linear.
if fEase == 0 then if fEase == 0 then
self:linear(t); self:linear(t);
return; return;
end end
-- fEase = +100 is equivalent to TweenDecelerate. -- fEase = +100 is equivalent to TweenType_Decelerate.
if fEase == 100 then if fEase == 100 then
self:decelerate(t); self:decelerate(t);
return; return;
end end
self:tween( t, TweenBezier, self:tween( t, "TweenType_Bezier",
{ {
0, 0,
scale(fEase, -100, 100, 0/3, 2/3), scale(fEase, -100, 100, 0/3, 2/3),
@@ -36,7 +36,7 @@ local BounceBeginBezier =
1, 1 1, 1
} }
function Actor:bouncebegin(t) function Actor:bouncebegin(t)
self:tween( t, TweenBezier, BounceBeginBezier ); self:tween( t, "TweenType_Bezier", BounceBeginBezier );
end end
local BounceEndBezier = local BounceEndBezier =
@@ -47,7 +47,7 @@ local BounceEndBezier =
1, 1 1, 1
} }
function Actor:bounceend(t) function Actor:bounceend(t)
self:tween( t, TweenBezier, BounceEndBezier ); self:tween( t, "TweenType_Bezier", BounceEndBezier );
end end
local SmoothBezier = local SmoothBezier =
@@ -55,7 +55,7 @@ local SmoothBezier =
0, 0, 1, 1 0, 0, 1, 1
} }
function Actor:smooth(t) function Actor:smooth(t)
self:tween( t, TweenBezier, SmoothBezier ); self:tween( t, "TweenType_Bezier", SmoothBezier );
end end
-- Hide if b is true, but don't unhide if b is false. -- Hide if b is true, but don't unhide if b is false.
+2 -12
View File
@@ -12,17 +12,7 @@ static const char *TweenTypeNames[] = {
"Spring", "Spring",
"Bezier" "Bezier"
}; };
XToString( TweenType, NUM_TweenType ); LuaXType( TweenType, NUM_TweenType, "TweenType_" );
static void LuaTweenType(lua_State* L)
{
FOREACH_TweenType( tt )
{
RString s = TweenTypeToString( tt );
LUA->SetGlobal( "Tween"+s, tt );
}
}
REGISTER_WITH_LUA_FUNCTION( LuaTweenType );
struct TweenLinear: public ITween struct TweenLinear: public ITween
@@ -99,7 +89,7 @@ ITween *ITween::CreateFromType( TweenType tt )
ITween *ITween::CreateFromStack( Lua *L, int iStackPos ) ITween *ITween::CreateFromStack( Lua *L, int iStackPos )
{ {
TweenType iType = (TweenType) IArg(iStackPos); TweenType iType = Enum::Check<TweenType>( L, iStackPos );
if( iType == TWEEN_BEZIER ) if( iType == TWEEN_BEZIER )
{ {
luaL_checktype( L, iStackPos+1, LUA_TTABLE ); luaL_checktype( L, iStackPos+1, LUA_TTABLE );
+1
View File
@@ -17,6 +17,7 @@ enum TweenType
TweenType_Invalid TweenType_Invalid
}; };
#define FOREACH_TweenType( tt ) FOREACH_ENUM( TweenType, NUM_TweenType, tt ) #define FOREACH_TweenType( tt ) FOREACH_ENUM( TweenType, NUM_TweenType, tt )
LuaDeclareType( TweenType );
class ITween class ITween
{ {