update method
dynamic
update(
- dynamic time,
- dynamic preserve
Implementation
update(time, preserve) {
if (time == null) { time = now(); }
if (preserve == null) { preserve = false; }
var tweenIds = this._tweens.keys.toList();
if (tweenIds.length == 0) {
return false;
}
// Tweens are updated in "batches". If you add a new tween during an
// update, then the new tween will be updated in the next batch.
// If you remove a tween during an update, it may or may not be updated.
// However, if the removed tween was added during the current batch,
// then it will not be updated.
while (tweenIds.length > 0) {
this._tweensAddedDuringUpdate = {};
for (var i = 0; i < tweenIds.length; i++) {
var tween = this._tweens[tweenIds[i]];
var autoStart = !preserve;
if (tween && tween.update(time, autoStart) == false && !preserve) {
_tweens.remove(tweenIds[i]);//delete this._tweens[tweenIds[i]];
}
}
tweenIds = this._tweensAddedDuringUpdate.keys.toList();
}
return true;
}