Skip to content

Kiln API / kiln / TweenManager

Class: TweenManager ​

Animates numbers over time, ticked in Fixed (deterministic; rendering interpolates Transform): res.mut(Tweens).to(entity, Transform, { y: 2, sx: 1.5 }, { duration: 0.4, ease: 'outBack' }). Works on any trait's number fields, on entities from commands.spawn before they exist, and on plain objects such as a resource from res.mut(R). A newer tween on the same fields takes them over. .then(...) chains; cancel(target) stops them. Emits TweenDone when one finishes.

Constructors ​

Constructor ​

ts
new TweenManager(app): TweenManager;

Parameters ​

ParameterType
appApp

Returns ​

TweenManager

Properties ​

active ​

ts
active: Active[] = [];

Methods ​

to() ​

Call Signature ​

ts
to(
   target, 
   trait, 
   values, 
   options?
): TweenHandle;

Starts a tween on an entity's trait fields.

Parameters ​
ParameterType
targetEntityRef
traitTrait
valuesRecord<string, number>
options?TweenOptions
Returns ​

TweenHandle

Call Signature ​

ts
to(
   target, 
   values, 
   options?
): TweenHandle;

Starts a tween on a plain object's number fields (e.g. res.mut(Fade)).

Parameters ​
ParameterType
targetobject
valuesRecord<string, number>
options?TweenOptions
Returns ​

TweenHandle


cancel() ​

ts
cancel(target, trait?): number;

Stops tweens on a target (optionally only one trait's). Values stay where they are.

Parameters ​

ParameterType
targetobject | EntityRef
trait?Trait

Returns ​

number


isTweening() ​

ts
isTweening(target, trait?): boolean;

True while a tween on this target (and trait) is running or waiting.

Parameters ​

ParameterType
targetobject | EntityRef
trait?Trait

Returns ​

boolean


toJSON() ​

ts
toJSON(): object;

Returns ​

object

active ​
ts
active: object[];

tick() ​

ts
tick(emit): void;

Advances every tween one fixed step. Called by TickTweens.

Parameters ​

ParameterType
emit(id, tag, entity) => void

Returns ​

void