cocos2d-x Sprite Action 问题
cocos2d-x为Sprite指定Action在执行的过程中,如何瞬间加快原速度的200%并且控制时间为10秒,或者瞬间减缓原速度的70%同样的时间为10秒,该如何实现...
cocos2d-x 为Sprite指定Action 在执行的过程中,如何瞬间加快原速度的200%并且控制时间为10秒,或者瞬间减缓原速度的70%同样的时间为10秒,该如何实现?
展开
2个回答
展开全部
#define THETAG 123/*这数字随你定*/
初始化动作:
CCAction*pAction=你要执行的动作;
pAction->setTag(THETAG);
pSprite->runAction(pAction); //你原本执行的动作
加速:
pSprite->stopActionByTag(THETAG);
pAction=CCSpeed::actionWithAction(
你要执行的动作/*注意时间这里要设置为20秒,因为加速实际就是十秒执行20秒的动作*/,
2/*如果要减速就是0.7*/);
pAction->setTag(THETAG);
pSprite->runAction(CCSequence::actions(
pAction,
CCCallFunc::actionWithTarget(pSprite,callfunc_selector(回调函数)),
NULL
));
下面是回调函数内部://这函数为执行动作的精灵的成员函数
stopActionByTag(THETAG);
CCAction*pAction=你要执行的动作;
pAction->setTag(THETAG);
runAction(pAction);
初始化动作:
CCAction*pAction=你要执行的动作;
pAction->setTag(THETAG);
pSprite->runAction(pAction); //你原本执行的动作
加速:
pSprite->stopActionByTag(THETAG);
pAction=CCSpeed::actionWithAction(
你要执行的动作/*注意时间这里要设置为20秒,因为加速实际就是十秒执行20秒的动作*/,
2/*如果要减速就是0.7*/);
pAction->setTag(THETAG);
pSprite->runAction(CCSequence::actions(
pAction,
CCCallFunc::actionWithTarget(pSprite,callfunc_selector(回调函数)),
NULL
));
下面是回调函数内部://这函数为执行动作的精灵的成员函数
stopActionByTag(THETAG);
CCAction*pAction=你要执行的动作;
pAction->setTag(THETAG);
runAction(pAction);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询