【玩转cocos2d-x之九】动作类CCAction
来源:互联网 发布:编程可以干什么工作 编辑:程序博客网 时间:2024/04/30 15:39
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12770909
精灵也出来了,但是不会动的精灵是木有用的。。。CCAction就是负责来解决精灵运动的问题。
1.概况
CCAction直接从CCObject继承而来,注意它代表的是一个动作,是动词。精灵执行了这个动作,而不是名词。CCAction本身并没有什么功能,主要是定义了一些通用函数和虚函数让子类实现多态性。
2.接口
- //返回一个描述
- const char* description();
- //返回动作是否结束
- virtual bool isDone(void);
- //在动作开始前调用,需要设置目标精灵
- virtual void startWithTarget(CCNode *pTarget);
- //每帧调用,time在0~1之间,0代表动作刚开始,0.5代表动作执行一半,1代表动作结束
- virtual void update(float time);
- //返回/设置目标节点
- CCNode* getTarget(void);
- void setTarget(CCNode *pTarget);
- //获取/设置上一个节点
- CCNode* getOriginalTarget(void);
- void setOriginalTarget(CCNode *pOriginalTarget);
- //获取/设置标签
- int getTag(void);
- void setTag(int nTag);
- //创建动作静态方法
- static CCAction* create();
3.CCFollow
CCFollow跟随动作,继承于CCAction,可以实现节点跟随另一个节点动作。它内部封装了一个boundary,也就是跟随范围,初始为CCRectZero。
- //创建一个CCFollow对象,create实际上调用了initWithTarget
- static CCFollow* create(CCNode *pFollowedNode, const CCRect& rect = CCRectZero);
- bool initWithTarget(CCNode *pFollowedNode, const CCRect& rect = CCRectZero);
4.CCSpeed
CCSpeed可调整速度动作类,内部封装了一个速度值,CCSpeed使用很简单,就是传入一个动作和速度,在内部重新copy一个新的动作返回。
- //创建一个可变速度动作类,传入速度值
- static CCSpeed* create(CCActionInterval* pAction, float fSpeed);
5.CCFiniteTimeAction
CCFiniteTimeAction有限次动作执行类,继承于CCAction,它有两个子类CCActionInstant和CCActionInterval,前者代表瞬时动作,也就是这个动作基本不需要时间马上就能完成,而后者代表延时,这个动作需要一段时间来运行。它的子类说明看上图吧。
相比CCAction,它多了一个m_fDuration属性,表示持续时间。
- //获取/设置动作持续时间
- float getDuration(void);
- void setDuration(float duration);
- //反转动作,类似于倒带效果,返回一个新的动作
- virtual CCFiniteTimeAction* reverse(void);
好了,游戏的基本元素就写到这里,写API文档很蛋疼的说。。。
- 【玩转cocos2d-x之九】动作类CCAction
- 【玩转cocos2d-x之九】动作类CCAction
- (转)cocos2d-X学习之主要类介绍:动作:CCAction
- cocos2d-x 动作类 CCAction
- cocos2d-x CCAction:动作
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- Cocos2d-x动作CCAction
- cocos2d-X学习之主要类介绍:动作:CCAction
- (转载)cocos2d-X学习之主要类介绍:动作:CCAction
- cocos2d-x 详解之 CCAction(动作)
- COCOS2D-X 动作类CCAction随笔
- Cocos2d-x(八)动作类CCAction
- Cocos2d-x 之CCAction
- 3阶以下贝塞尔曲线轨迹库和任意轨迹库
- Apriori算法
- 游戏开发相关的一些中英文对照
- 伽玛校正(Gamma Correction)
- 基于Html5的爱情主题网站–表白神器
- 【玩转cocos2d-x之九】动作类CCAction
- O2O理念深入网络娱乐,传统KTV遭遇重大挑战
- 环境变量
- IT十年,蓦然顿悟
- 颠覆你对方法调用的看法
- [Round B] China New Grad Test 2014: Problem A. Sudoku Checker
- 这次的学习的内容是关于在button动态方法连接多个switch 和textfield
- 实时数据采集传输软件LDM安装
- mysql中从一张表复制几条记录到另一张表