Cocos2d-x-----------------------------------------------ActionManager

前端之家收集整理的这篇文章主要介绍了Cocos2d-x-----------------------------------------------ActionManager前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_403_1@1、如果一个精灵同时执行多个动作action,这些动作是并行的

@H_403_1@

@H_403_1@2、停止目前@H_403_1@动作

node->@H_403_1@stopAllActions();

@H_403_1@node会停止目前正在执行的动作,但是不会影响到这句之后执行的action

@H_403_1@

@H_403_1@3、延迟时间执行动作

@H_403_1@1)、加入动作管理器并停止执行动作

Director::@H_403_1@getInstance()->@H_403_1@getActionManager()->@H_403_1@addAction(action,grossini,true);

@H_403_1@

@H_403_1@action:动作

@H_403_1@grossini:精灵

@H_403_1@true:是不是暂停

@H_403_1@

@H_403_1@2)推延时间

@H_403_1@方法一:scheduleOnce,设置delay时间

@H_403_1@方法二:this->runAction(action);执行DelayTime动作

方法三:@H_403_1@schedule,在schedule里面停止计时器,与方法一同

@H_403_1@

@H_403_1@3)恢复执行动作

Director@H_403_1@::getInstance()->@H_403_1@getActionManager()->@H_403_1@resuMetarget(node);

@H_403_1@恢复node节点的动作

@H_403_1@

@H_403_1@PS:也可以直接让node执行action序列,先延时在动作执行完的回调函数中执行需要延时的动作

@H_403_1@

@H_403_1@4、停止指定动作

node->@H_403_1@stopActionByTag(22);

@H_403_1@通过给action设置tag或者flags可以停止某个动作,如果不同的action有同一个tag,则可以通过这个方法停止多个动作

@H_403_1@

@H_403_1@5、节点停止所有@H_403_1@动作

@H_403_1@暂停:

Director::@H_403_1@getInstance()->@H_403_1@getActionManager()->@H_403_1@pauseTarget(node);

@H_403_1@停止节点node的所有动作,包括这句代码之前执行的还是这句代码后执行

@H_403_1@node->runAction@H_403_1@(ScaleBy@H_403_1@::create@H_403_1@(2@H_403_1@,2@H_403_1@));

Director::@H_403_1@getInstance()->@H_403_1@getActionManager()->@H_403_1@pauseTarget(node);

@H_403_1@node->runAction@H_403_1@(RotateBy@H_403_1@::create@H_403_1@(2@H_403_1@,360@H_403_1@));

@H_403_1@这样的话,节点并不会执行放大的动作,也不会执行旋转的动作

@H_403_1@

恢复:Director::@H_403_1@getInstance()->@H_403_1@getActionManager()->@H_403_1@resuMetarget(node);

猜你在找的Cocos2d-x相关文章