ease, bouncebegin, bounceend
This commit is contained in:
@@ -1,3 +1,55 @@
|
||||
function Actor:ease(t, fEase)
|
||||
-- Optimizations:
|
||||
-- fEase = -100 is equivalent to TweenAccelerate.
|
||||
if fEase == -100 then
|
||||
self:accelerate(t);
|
||||
return;
|
||||
end
|
||||
|
||||
-- fEase = 0 is equivalent to TweenLinear.
|
||||
if fEase == 0 then
|
||||
self:linear(t);
|
||||
return;
|
||||
end
|
||||
|
||||
-- fEase = +100 is equivalent to TweenDecelerate.
|
||||
if fEase == 100 then
|
||||
self:decelerate(t);
|
||||
return;
|
||||
end
|
||||
|
||||
self:tween( t, TweenBezier,
|
||||
{
|
||||
0,
|
||||
scale(fEase, -100, 100, 0/3, 2/3),
|
||||
scale(fEase, -100, 100, 1/3, 3/3),
|
||||
1
|
||||
}
|
||||
);
|
||||
end
|
||||
|
||||
local BounceBeginBezier =
|
||||
{
|
||||
0, 0,
|
||||
0.42, -0.42,
|
||||
2/3, 0.3,
|
||||
1, 1
|
||||
}
|
||||
function Actor:bouncebegin(t)
|
||||
self:tween( t, TweenBezier, BounceBeginBezier );
|
||||
end
|
||||
|
||||
local BounceEndBezier =
|
||||
{
|
||||
0,0,
|
||||
1/3, 0.7,
|
||||
0.58, 1.42,
|
||||
1, 1
|
||||
}
|
||||
function Actor:bounceend(t)
|
||||
self:tween( t, TweenBezier, BounceEndBezier );
|
||||
end
|
||||
|
||||
-- Hide if b is true, but don't unhide if b is false.
|
||||
function Actor:hide_if(b)
|
||||
if b then
|
||||
|
||||
Reference in New Issue
Block a user