| Package | starling.animation |
| Class | public class Juggler |
| Inheritance | Juggler Object |
| Implements | IAnimatable |
A juggler is a simple object. It does no more than saving a list of objects implementing "IAnimatable" and advancing their time if it is told to do so (by calling its own "advanceTime"-method). When an animation is completed, it throws it away.
There is a default juggler available at the Starling class:
var juggler:Juggler = Starling.juggler;
You can create juggler objects yourself, just as well. That way, you can group your game into logical components that handle their animations independently. All you have to do is call the "advanceTime" method on your custom juggler once per frame.
Another handy feature of the juggler is the "delayCall"-method. Use it to execute a function at a later time. Different to conventional approaches, the method will only be called when the juggler is advanced, giving you perfect control over the call.
juggler.delayCall(object.removeFromParent, 1.0);
juggler.delayCall(object.addChild, 2.0, theChild);
juggler.delayCall(function():void { doSomethingFunny(); }, 3.0);
See also
| Property | Defined By | ||
|---|---|---|---|
| elapsedTime : Number [read-only] The total life time of the juggler (in seconds). | Juggler | ||
| Method | Defined By | ||
|---|---|---|---|
Juggler() Create an empty juggler. | Juggler | ||
add(object:IAnimatable):void Adds an object to the juggler. | Juggler | ||
advanceTime(time:Number):void Advances all objects by a certain time (in seconds). | Juggler | ||
contains(object:IAnimatable):Boolean Determines if an object has been added to the juggler. | Juggler | ||
containsTweens(target:Object):Boolean Figures out if the juggler contains one or more tweens with a certain target. | Juggler | ||
delayCall(call:Function, delay:Number, ... args):DelayedCall Delays the execution of a function until delay seconds have passed. | Juggler | ||
purge():void Removes all objects at once. | Juggler | ||
remove(object:IAnimatable):void Removes an object from the juggler. | Juggler | ||
removeTweens(target:Object):void Removes all tweens with a certain target. | Juggler | ||
tween(target:Object, time:Number, properties:Object):void Utilizes a tween to animate the target object over time seconds. | Juggler | ||
| elapsedTime | property |
elapsedTime:Number [read-only] The total life time of the juggler (in seconds).
public function get elapsedTime():Number| Juggler | () | Constructor |
public function Juggler()Create an empty juggler.
| add | () | method |
public function add(object:IAnimatable):voidAdds an object to the juggler.
Parameters
object:IAnimatable |
| advanceTime | () | method |
public function advanceTime(time:Number):voidAdvances all objects by a certain time (in seconds).
Parameters
time:Number |
| contains | () | method |
public function contains(object:IAnimatable):BooleanDetermines if an object has been added to the juggler.
Parameters
object:IAnimatable |
Boolean |
| containsTweens | () | method |
public function containsTweens(target:Object):BooleanFigures out if the juggler contains one or more tweens with a certain target.
Parameters
target:Object |
Boolean |
| delayCall | () | method |
public function delayCall(call:Function, delay:Number, ... args):DelayedCall Delays the execution of a function until delay seconds have passed.
Creates an object of type 'DelayedCall' internally and returns it. Remove that object
from the juggler to cancel the function call.
Parameters
call:Function | |
delay:Number | |
... args |
DelayedCall |
| purge | () | method |
public function purge():voidRemoves all objects at once.
| remove | () | method |
public function remove(object:IAnimatable):voidRemoves an object from the juggler.
Parameters
object:IAnimatable |
| removeTweens | () | method |
public function removeTweens(target:Object):voidRemoves all tweens with a certain target.
Parameters
target:Object |
| tween | () | method |
public function tween(target:Object, time:Number, properties:Object):void Utilizes a tween to animate the target object over time seconds. Internally,
this method uses a tween instance (taken from an object pool) that is added to the
juggler right away. This method provides a convenient alternative for creating
and adding a tween manually.
Fill 'properties' with key-value pairs that describe both the tween and the animation target. Here is an example:
juggler.tween(object, 2.0, {
transition: Transitions.EASE_IN_OUT,
delay: 20, // -> tween.delay = 20
x: 50 // -> tween.animate("x", 50)
});
Parameters
target:Object | |
time:Number | |
properties:Object |