序列帧动画的问题 老是打不到预想的效果

我在做一个切换场景然后开始倒计时的然后在开始计时 我的思路是先创建一个序列帧动画 资源就是123 3个图片 然后播放 调用回调函数开始计时。现在倒计时的效果有但是怎么加这个回调呢 新手请大神指教一下。下面是动画的代码


Size visibleSize = Director::getInstance()->getVisibleSize();
Point origin = Director::getInstance()->getVisibleOrigin();
auto cache = SpriteFrameCache::getInstance();
cache->addSpriteFramesWithFile(“icon//number.plist”);//加载plist文件
auto sp1 = Sprite::createWithSpriteFrameName(“3.png”);//使用第一帧精灵初始化对象,精灵对象的名字与plist中的名字一致
sp1->setPosition(ccp(visibleSize.width/2,visibleSize.height/4));
addChild(sp1);
Vector<SpriteFrame*>arr1;
char str = {0};
for(int i = 3; i >=0; i–)
{
sprintf(str,"%d.png",i);//将精灵帧加载
auto frame = cache->getSpriteFrameByName(str);
arr1.pushBack(frame);
}
//执行动作
auto AnimFonc=CallFuncN::create(CC_CALLBACK_1(MouseMain::AnimateCall,this));
auto animation2 = Animation::createWithSpriteFrames(arr1,1.0);
//sp1->runAction(Animate::create(animation2));
sp1->runAction(Animate::create(animation2));

不是有Sequence吗?

我 是想动画执行一帧执行一次音效

这个需求我认为起一个定时器 每秒调用一个函数
函数里用一个全局变量来控制sprite的显示隐藏 然后播放音效
不用序列帧来的好

问题解决了 ,这个是用一个switch case 实现的