Packagestarling.animation
Classpublic class Juggler
InheritanceJuggler Inheritance Object
Implements IAnimatable

The Juggler takes objects that implement IAnimatable (like Tweens) and executes them.

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

Tween
DelayedCall


Public Properties
 PropertyDefined By
  elapsedTime : Number
[read-only] The total life time of the juggler.
Juggler
  isComplete : Boolean
[read-only] Always returns 'false'.
Juggler
Public Methods
 MethodDefined By
  
Create an empty juggler.
Juggler
  
add(object:IAnimatable):void
Adds an object to the juggler.
Juggler
  
advanceTime(time:Number):void
Advanced all objects by a certain time (in seconds).
Juggler
  
delayCall(call:Function, delay:Number, ... args):DelayedCall
Delays the execution of a function until a certain time has 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
Property Detail
elapsedTimeproperty
elapsedTime:Number  [read-only]

The total life time of the juggler.


Implementation
    public function get elapsedTime():Number
isCompleteproperty 
isComplete:Boolean  [read-only]

Always returns 'false'.


Implementation
    public function get isComplete():Boolean
Constructor Detail
Juggler()Constructor
public function Juggler()

Create an empty juggler.

Method Detail
add()method
public function add(object:IAnimatable):void

Adds an object to the juggler.

Parameters

object:IAnimatable

advanceTime()method 
public function advanceTime(time:Number):void

Advanced all objects by a certain time (in seconds). Objects with a positive 'isComplete'-property will be removed.

Parameters

time:Number

delayCall()method 
public function delayCall(call:Function, delay:Number, ... args):DelayedCall

Delays the execution of a function until a certain time has 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

Returns
DelayedCall
purge()method 
public function purge():void

Removes all objects at once.

remove()method 
public function remove(object:IAnimatable):void

Removes an object from the juggler.

Parameters

object:IAnimatable

removeTweens()method 
public function removeTweens(target:Object):void

Removes all tweens with a certain target.

Parameters

target:Object