参数为(动画,动画name或索引)
// 停在动画的第一帧
animationGoToStart(anim: cc.Animation, name: string | number): void {
let anim_name = name;
if (typeof name === "number") {
anim_name = anim.getClips()[name].name;
}
anim.play(String(anim_name), 0);
anim.sample(anim_name); //采样
anim.stop();
}
// 停在动画的最后一帧
animationGoToEnd(anim: cc.Animation, name: string | number): void {
let anim_key = name;
let anim_vaule = name;
if (typeof name === "string") {
for (const key in anim.getClips()) {
if (anim.getClips()[key].name === name) {
anim_key = key;
break;
}
}
}
else if (typeof name === "number") {
anim_vaule = anim.getClips()[name].name;
}
const anim_time = anim.getClips()[anim_key].duration; //获取动画的时长
anim.play(String(anim_vaule), anim_time);
}