我有这个moveStep()
函数让Sprite在Tween.js中移动一步,
createjs.Tween.get(this.lion).to({x: x, y: y}, 300);
但如果多次调用moveStep()
,则结果与调用一次时相同(x,y在函数中计算)。
在结束动画之前链接动画或阻止下一个动画的实用方法是什么?
我能想到这个方法:
计算函数中的参数并创建一个字符串,然后在末尾eval
链接的字符串。但这似乎不太好。
答案 0 :(得分:1)
当您get
Tween的对象时,它是new createjs.Tween()
的快捷方式,因此您只需创建一个新的补间实例,该实例将立即运行。
要链接补间,您需要在同一个Tween实例上调用其他to
个调用。如果您在前面创建了一个Tween,并将其传递给方法,那就可以满足您的要求:
function moveStep(tween, x, y) {
tween.to({x: x, y: y}, 300);
}
var tween = createjs.Tween.get(this.lion);
moveStep(tween, 100,100);
moveStep(tween, 300, 300);
您还可以按顺序构建to()
来电。
var tween = createjs.Tween.get(this.lion)
.to({x:100,y:100})
.to({x:300, y:300});
希望有所帮助。