1
我正在制作一款纸牌游戏,我想逐一抽奖。卡必须分别向玩家和经销商一一处理。 在此过程中,现在我想添加已完成的卡片动画,但它一起发生。现在,我想使一个个动画 即一卡得那么开第二张牌一样,Cocos2d-x - 如何让等待第二个动画,直到一个动画完成?
我一直在使用CCArray0> addobj(CCSequence)试过......这里的方法是我的代码,但它不工作
m_AnimateCardArr = CCArray::create(4);
for (int i = 0; i < 4; i++) {
switch (i){
case 0: player->draw(card)
cardAnimation(player,card,500,200);
break;
case 1: player->draw(card)
cardAnimation(player,card,550,200);
break;
case 2: dealaer->draw(card)
cardAnimation(player,card,500,1000);
break;
case 3 :dealaer->draw(card)
cardAnimation(player,card,550,1000);
break;
}
++mCount;
}
void CardAnimation(Player* player,Card* card, CCPoint startPts,CCPoint endPts){
// ,, some code
m_AnimateCardArr->addObject(CCSequence::create(spawn1,spawn2,finishAnimation,NULL));
if(mCount>=4)
card->runAction(CCSequence::create(m_AnimateCardArr));
}
只要mCount变为4我尝试运行行动,但它不工作
要创建一个新的CCSequence功能*的通话*和运行定时器吗?我不熟悉2.0,但我想你应该从数组中获取CCSequence *并运行它,而不是使用数组创建新的。 –
如果你只是想延迟,我想CCDelayTime和CCCallFunc可能会帮助你。 –