Difference between revisions of "MovieClip"
m (Text replacement - "<source" to "<syntaxhighlight") |
|||
Line 59: | Line 59: | ||
=== Examples === | === Examples === | ||
− | < | + | <syntaxhighlight lang="lua"> |
-- construct a 100 frame animation where x coordinate of sprite tweens from 0 to 200 linearly | -- construct a 100 frame animation where x coordinate of sprite tweens from 0 to 200 linearly | ||
local mc = MovieClip.new{ | local mc = MovieClip.new{ |
Revision as of 14:28, 13 July 2023
Supported platforms:
Available since: Gideros 2011.6
Inherits from: Sprite
Description
The MovieClip class inherits from the following classes: Sprite > EventDispatcher.
The MovieClip class is used to create static timedlined animations. The timeline parameters are given as an array.
Each array element specifies one timeline element and consists of: the starting frame (frame numbers start from 1), the ending frame, a sprite and an optional tweening parameters.
When a MovieClip object finishes playing (by reaching its final frame or a frame with stop action), it dispatches an Event.COMPLETE event.
The following properties can be tweened:
- x
- y
- rotation
- scale
- scaleX
- scaleY
- alpha
- anchorX
- anchorY
Additionally MovieClip uses a function to tween properties. If you override the default tween function then you can tween this parameter too. The following easing functions can be used:
- "inBack"
- "outBack"
- "inOutBack"
- "inBounce"
- "outBounce"
- "inOutBounce"
- "inCircular"
- "outCircular"
- "inOutCircular"'
- "inCubic"
- "outCubic"
- "inOutCubic"
- "inElastic"
- "outElastic"
- "inOutElastic"
- "inExponential"
- "outExponential"
- "inOutExponential"
- "linear"
- "inQuadratic"
- "outQuadratic"
- "inOutQuadratic"
- "inQuartic"
- "outQuartic"
- "inOutQuartic"
- "inQuintic"
- "outQuintic"
- "inOutQuintic"
- "inSine"
- "outSine"
- "inOutSine"
Examples
<syntaxhighlight lang="lua"> -- construct a 100 frame animation where x coordinate of sprite tweens from 0 to 200 linearly local mc = MovieClip.new{ {1, 100, sprite, {x = {0, 200, "linear"}}} }
-- construct a 100 frame animation where x coordinate of sprite is 50 (constant) and -- y coordinate of sprite tweens from 50 to 150 by using inBounce function local mc = MovieClip.new{ {1, 100, sprite, {x = 50, y = {50, 150, "inBounce"}}} }
-- construct a 200 frame animation where sprite1 and sprite2 tweens differently -- here sprite1 is visible between frames [1, 150] -- and sprite2 is visible between frames [100, 200] local mc = MovieClip.new{ {1, 100, sprite1, {x = {0, 200, "linear"}}}, {50, 150, sprite1, {y = {0, 100, "linear"}, alpha = {0, 1, "easeOut"}}}, {100, 200, sprite2, {x = {0, 200, "linear"}}}, }
-- construct a looping 6 frame animation where each frame is a different sprite local mc = MovieClip.new{ {1, 1, frame1}, {2, 2, frame2}, {3, 3, frame3}, {4, 4, frame4}, {5, 5, frame5}, {6, 6, frame6}, } mc:setGotoAction(6, 1) -- if the animation reaches frame 6 then go to frame 1
-- construct a looping 6 frame animation playing 5 times slower than the previous example local mc = MovieClip.new{ {1, 5, frame1}, {5, 10, frame2}, {11, 15, frame3}, {16, 20, frame4}, {21, 25, frame5}, {26, 30, frame6}, } mc:setGotoAction(30, 1) -- if the animation reaches frame 30 then go to frame 1 </source>
MethodsMovieClip.new creates a new MovieClip object |
EventsConstants |