博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d的常用动作及效果总结之四:Special Actions
阅读量:6954 次
发布时间:2019-06-27

本文共 986 字,大约阅读时间需要 3 分钟。

Special Actions 个人理解包含三部分,一个是函数,一个“镜头跟踪”,一个属性控制(这是俺个人的叫法)。我会根据个人使用的经验慢慢添加内容,没用过的就先不写了。

函数部分:

CCCallFunc  

CCCalFunc用来在CCSequence中调用方法。比如,你需要在一个精灵做了一些列动画后,调用一个方法实现某个逻辑计算,那么你就需要这个东东,下面是示例

id actionTo = [CCMoveTo actionWithDuration: 2 position: ccp(160, 240)];id actionCallFunc = [CCCallFunc actionWithTarget:self selector:@selector(doATask)]; id actionSequence = [CCSequence actions: actionTo, actionCallFunc, nil];[sprite runAtion:actionSequence]; -(void) doATask{    //some code}

以上代码的意思,sprite先移动到坐标(160,240)位置,然后调用 doATask方法。

说下CCCalFunc的参数,actionWithTarget 指定是你将要调用的方法时哪个对象的,这个参数不是只有self,可以是任何对象。参数是 self 时,意思就是调用当前对象的方法。
selector指的时方法的签名(我就这么叫吧),格式是 @selector(方法名),这里doATask,也就是代码最下边的那个。

CCActionTween 

如果,你需要改变一个精灵的属性,但是当前的action类并没有提供相应的功能,那么,你可以使用这个CCPropertyAction(原来的CCPropertyAction)来顶一下。代码如下:

id rot = [CCActionTween actionWithDuration:2 key:@"rotation" from:0 to:-270];[sprite runAction:rot];

这类法我暂时还没用过,不过它比较简单。actionWithDuration 就是动作的时间, key 是要改变的属性的名, from 和 to 指定了属性值变化的范围。

 

转载地址:http://opvil.baihongyu.com/

你可能感兴趣的文章
Docker镜像细节
查看>>
如何通过脚本实现数据动态更新
查看>>
远禾科技出席阿里ASRC生态大会 并参与安恒西湖论剑
查看>>
使用eclipse创建web项目的项目图文步骤
查看>>
window powershell 获取所有用户的最后登录时间
查看>>
ApiPost的环境变量的定义和使用「ApiPost环境变量」
查看>>
智能相机是工业深度学习的第一步
查看>>
Android 代码中动态设置字体大小-TextView.SetTextSize()
查看>>
Percona XtraBackup 8.0, 安装与测试
查看>>
GeoMesa时空基础及应用场景
查看>>
使用Intellij Idea打包java为可执行jar包
查看>>
智能手机 3D 视觉之战:苹果不再一枝独秀,Android 全面崛起
查看>>
用AI教直男恋爱、手残做菜、防诈骗,愚人节的百度、阿里、腾讯好嗨哟!
查看>>
「镁客·请讲」羿娲科技谷鹄翔:“小”赛道如何做出“大有可为”?
查看>>
一次性搞清楚equals和hashCode
查看>>
都996了,研发效能还是提不起来,关键在这里
查看>>
win10更新后 chrome内核浏览器总是打开网页一直加载 甚至打不开 解决方法
查看>>
C#:foreach语句,yield语句
查看>>
【WPF】设置TextBox内容为空时的提示文字
查看>>
Node v6.17.1 (LTS) 发布,Node 6 生命周期将结束
查看>>