The TweenData is a class that contains a single target and property that is being tweened.
Tweens create TweenData instances when they are created, with one TweenData instance per target, per property. A Tween can own multiple TweenData instances, but a TweenData only ever belongs to a single Tween.
You should not typically create these yourself, but rather use the TweenBuilder,
or the Tween.add
method.
Prior to Phaser 3.60 the TweenData was just an object, but was refactored to a class, to make it responsible for its own state and updating.
new TweenData(tween, targetIndex, key, getEnd, getStart, getActive, ease, delay, duration, yoyo, hold, repeat, repeatDelay, flipX, flipY, interpolation, interpolationData)
name | type | description |
---|---|---|
tween | Phaser.Tweens.Tween |
The tween this TweenData instance belongs to. |
targetIndex | number |
The target index within the Tween targets array. |
key | string |
The property of the target to tween. |
getEnd | Phaser.Types.Tweens.GetEndCallback |
What the property will be at the END of the Tween. |
getStart | Phaser.Types.Tweens.GetStartCallback |
What the property will be at the START of the Tween. |
getActive | Phaser.Types.Tweens.GetActiveCallback |
If not null, is invoked immediately as soon as the TweenData is running, and is set on the target property. |
ease | function |
The ease function this tween uses. |
delay | function |
Function that returns the time in milliseconds before tween will start. |
duration | number |
The duration of the tween in milliseconds. |
yoyo | boolean |
Determines whether the tween should return back to its start value after hold has expired. |
hold | number |
Function that returns the time in milliseconds the tween will pause before repeating or returning to its starting value if yoyo is set to true. |
repeat | number |
Function that returns the number of times to repeat the tween. The tween will always run once regardless, so a repeat value of '1' will play the tween twice. |
repeatDelay | number |
Function that returns the time in milliseconds before the repeat will start. |
flipX | boolean |
Should toggleFlipX be called when yoyo or repeat happens? |
flipY | boolean |
Should toggleFlipY be called when yoyo or repeat happens? |
interpolation | function |
The interpolation function to be used for arrays of data. Defaults to 'null'. |
interpolationData | Array.<number> |
The array of interpolation data to be set. Defaults to 'null'. |
The targets current value, as recorded in the most recent step.
The time, in milliseconds, before this tween will start playing.
This value is generated by the getDelay
function.
The duration of the tween in milliseconds, excluding any time required for yoyo or repeats.
The ease function this Tween uses to calculate the target value.
The amount of time, in milliseconds, that has elapsed since this TweenData was made active.
The targets ending value, as returned by getEndValue
.
If true
this Tween will call toggleFlipX
on the Tween target
whenever it yoyo's or repeats. It will only be called if the target
has a function matching this name, like most Phaser GameObjects do.
If true
this Tween will call toggleFlipY
on the Tween target
whenever it yoyo's or repeats. It will only be called if the target
has a function matching this name, like most Phaser GameObjects do.
A function that returns what to set the target property to, the moment the TweenData is invoked.
This is called when this TweenData is initialised or reset.
This function returns the value to be used for TweenData.delay
.
A function that returns what to set the target property to at the end of the tween.
This is called when the tween starts playing, after any initial start delay, or if the tween is reset, or is set to repeat.
A function that returns what to set the target property to at the start of the tween.
This is called when the tween starts playing, after any initial start delay, or if the tween is reset, or is set to repeat.
The time, in milliseconds, before this tween will start a yoyo to repeat.
The interpolation function to be used for arrays of data.
The array of data to interpolate, if interpolation is being used.
Is this Tween Data currently waiting for a countdown to elapse, or not?
The property of the target to be tweened.
The target value from the previous step.
A value between 0 and 1 holding the progress of this TweenData.
The number of times this tween will repeat.
The tween will always run once regardless of this value, so a repeat value of '1' will play the tween twice: I.e. the original play-through and then it repeats that once (1).
If this value is set to -1 this tween will repeat forever.
How many repeats are left to run?
The time, in milliseconds, before the repeat will start.
The targets starting value, as returned by getStartValue
.
The state of this TweenData.
The index of the target within the Tween targets
array.
The total calculated duration, in milliseconds, of this TweenData. Factoring in the duration, repeats, delays and yoyos.
A reference to the Tween that this TweenData instance belongs to.
Will the Tween ease back to its starting values, after reaching the end
and any hold
value that may be set?
Immediately destroys this TweenData, nulling of all its references.
Internal method that will emit a TweenData based Event on the parent Tween and also invoke the given callback, if provided.
name | type | arguments | description |
---|---|---|---|
event | Phaser.Types.Tweens.Event |
The Event to be dispatched. |
|
callback | Phaser.Types.Tweens.TweenCallbackTypes | <optional> |
The name of the callback to be invoked. Can be |
Returns a reference to the target object belonging to this TweenData.
The target object. Can be any JavaScript object, but is typically a Game Object.
Returns true
if this TweenData has a current state of COMPLETE, otherwise false
.
true
if this TweenData has a current state of COMPLETE, otherwise false
.
Returns true
if this TweenData has a current state of CREATED, otherwise false
.
true
if this TweenData has a current state of CREATED, otherwise false
.
Returns true
if this TweenData has a current state of DELAY, otherwise false
.
true
if this TweenData has a current state of DELAY, otherwise false
.
Returns true
if this TweenData has a current state of HOLD_DELAY, otherwise false
.
true
if this TweenData has a current state of HOLD_DELAY, otherwise false
.
Returns true
if this TweenData has a current state of PENDING_RENDER, otherwise false
.
true
if this TweenData has a current state of PENDING_RENDER, otherwise false
.
Returns true
if this TweenData has a current state of PLAYING_BACKWARD, otherwise false
.
true
if this TweenData has a current state of PLAYING_BACKWARD, otherwise false
.
Returns true
if this TweenData has a current state of PLAYING_FORWARD, otherwise false
.
true
if this TweenData has a current state of PLAYING_FORWARD, otherwise false
.
Returns true
if this TweenData has a current state of REPEAT_DELAY, otherwise false
.
true
if this TweenData has a current state of REPEAT_DELAY, otherwise false
.
Internal method that handles repeating or yoyo'ing this TweenData.
Called automatically by setStateFromStart
and setStateFromEnd
.
name | type | description |
---|---|---|
diff | number |
Any extra time that needs to be accounted for in the elapsed and progress values. |
setStart | boolean |
Set the TweenData start values? |
isYoyo | boolean |
Is this call a Yoyo check? |
Internal method that resets this Tween Data entirely, including the progress and elapsed values.
Called automatically by the parent Tween. Should not be called directly.
name | type | arguments | Default | description |
---|---|---|---|---|
isSeeking | boolean | <optional> | false |
Is the Tween Data being reset as part of a Tween seek? |
Sets this TweenData state to COMPLETE.
Sets this TweenData state to CREATED.
Sets this TweenData state to DELAY.
Sets this TweenData state to HOLD_DELAY.
Sets this TweenData state to PENDING_RENDER.
Sets this TweenData state to PLAYING_BACKWARD.
Sets this TweenData state to PLAYING_FORWARD.
Sets this TweenData state to REPEAT_DELAY.
Internal method used as part of the playback process that checks if this TweenData should yoyo, repeat, or has completed.
name | type | description |
---|---|---|
diff | number |
Any extra time that needs to be accounted for in the elapsed and progress values. |
Internal method used as part of the playback process that checks if this TweenData should repeat or has completed.
name | type | description |
---|---|---|
diff | number |
Any extra time that needs to be accounted for in the elapsed and progress values. |
Sets this TweenData's target object property to be the given value.
name | type | arguments | description |
---|---|---|---|
value | number | <optional> |
The value to set on the target. If not given, sets it to the last |
Internal method that advances this TweenData based on the delta value given.
name | type | description |
---|---|---|
delta | number |
The elapsed delta time in ms. |
true
if this TweenData is still playing, or false
if it has finished entirely.