cocos2d-x中的基本动作
判断一个精灵被点击: 1、层要接收点击消息。2、回调函数中取得点击坐标。3、取得精灵用boudingBox().containsPoint函数判断。(或使用 convertTouchToNodeSpaceAR 方法)
多Layer点击处理: 1、使用ccTouchesBegan()。此函数返回true,表示中断消息链,本层接收消息;返回false则本层不接收消息。 2、重写个Layer。大体思路是只有最底层的Layer接收消息,然后根据某种方式转发给各层。 具体可参考文章:http://www.myexception.cn/operating-system/1118630.html cocos2d-x 建立自己的层级窗口消息机制
精灵拉长: setScale() 尽量不用这样的变换,因为会虚。
精灵半透明: setOpacity() 设置半透明0~255 。
精灵旋转: setRotation() 默认是Z轴旋转。 setRotationX() X轴为对称轴旋转。 setRotationY() Y轴为对称中心。
精灵设定颜色: setColor() 真没感觉有啥用。有ccBLUE之类的宏。
相反的动作: reverse() 创建一个相反的动作,之前动作必须是By类型的。与坐标无关,只与动作相关。 相反一系列动作: 将CCSquence创建好的一系列动作赋值给一个CCFiniteTimeAction 指针,然后再调用这个指针的reverse。
动作类型: CCActionInterval:
| 类名 | 功能 |
| CCMoveTo | 移动 |
| CCScaleTo | 放大 |
| CCSKewTo | 斜交(距离无穷的旋转) |
| CCRotateTo | 旋转 |
| CCJumpTo | 跳动 |
| CCBezierTo | 贝塞尔曲线移动 |
| CCBlink | 闪烁 |
| CCFadeIn\Out | 渐隐 |
| CCTintTo | 上色 |
| CCToggleVisibility | 切换可见 |
| CCHide | 隐藏 |
| CCShow | 显示 |
| CCOrbitCamera | 轨道相机?能实现落叶翻转的效果 |
| CCCardinalSplineBy | 路径移动 |
| CCCatmullRomTo | 也是路径移动,不知道有什么区别 |
一直重复动作: CCRepeatForever::create() 在runaAtion中把相应的动作套上这个类型即可。
重复一次动作: CCRepeat::create() 在runaAtion中把相应的动作套上这个类型即可。
同步: CCSpawn 与CCSquence用法一样只不过是同时执行。
跟随精灵移动: CCFollow 运行Layer中的runAction。第二个参数为Layer的大小。
多个精灵的动作序列: CCTargetedAction 与精灵相关的动作,创建好之后,可直接放到CCSqence中。
动作叠加: 精灵调用多次runAction可以使不同的动作叠加起来。
动作的暂停与恢复: 动作暂停: sharedDirector->getActionManager()->pauseAllRunningActions() 即可暂停所有动作,返回值为一个CCSet* 要将其存入m_pPausedTargets中。使用时可参照:
CC_SAFE_RELEASE(m_pPausedTargets); m_pPausedTargets = director->getActionManager()->pauseAllRunningActions(); CC_SAFE_RETAIN(m_pPausedTargets);
动作的恢复为: sharedDirector->getActionManager()->resumeTargets(m_pPausedTargets)
转自 http://blog.csdn.net/fansongy/article/details/8835146
cocos2d-x中的基本动作的更多相关文章
- 如何在cocos2d项目中enable ARC
如何在cocos2d项目中enable ARC 基本思想就是不支持ARC的代码用和支持ARC的分开,通过xcode中设置编译选项,让支持和不支持ARC的代码共存. cocos2d是ios app开发中 ...
- 如何在Cocos2D游戏中实现A*寻路算法(六)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(一)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(八)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(七)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(五)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(四)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(三)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(二)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- Cocos2D场景中对象引用为nil时的判断
如果该对象在SpriteBuilder中属性中设置了name,则检查是否 [self.scene getChildByName:@"theNameOfTheNode" recurs ...
随机推荐
- Noip2016day1 玩具迷题toy
题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天, 这些玩具小人把小南的眼镜藏了起来. 小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外.如下图: 这时singer告诉 ...
- Canesten 项目申请ICP备案过程中遇到的问题及知识点扩充
遇到的问题:Canesten备案主体是Bayer *** Ltd., Shanghai Branch, 而提供的IP是 Bayer (China)limited,违背了电信要求的三一致原则,即备案主体 ...
- IT兄弟连 JavaWeb教程 JSON和JSON字符串
JSON (JavaScript Object Notation)是JavaScript语言中的一种对象类型.JSON的好处是易于阅读和解析.当客户端和服务器端需要交互大量数据时,使用JSON格式传输 ...
- The database could not be exclusively locked to perform the operation(SQL Server 5030错误解决办法)(转)
Microsoft SQL Server 5030错误解决办法 今天在使用SQL Server时,由于之前创建数据库忘记了设置Collocation,数据库中插入中文字符都是乱码,于是到DataBas ...
- vue教程5-账户登录
router export const constantRouterMap = [ { path: '/login', component: () => import('@/views/logi ...
- 51nod 1515 明辨是非 并查集+set维护相等与不等关系
考试时先拿vector瞎搞不等信息,又没离散化,结果好像MLE:后来想起课上讲过用set维护,就开始瞎搞迭代器...QWQ我太菜了.. 用并查集维护相等信息,用set记录不相等的信息: 如果要求变量不 ...
- bzoj3295: [Cqoi2011]动态逆序对 三维数点
为了便于考虑,把删除反序变为增加 于是就变成关于权值和位置和时间的三维数点 一波cdq一波树状数组教做人 (神TM需要longlong,80了一发) #include <bits/stdc++. ...
- 开启 PHP 错误提示配置步骤详解
PHP编码出错不提示,这对于开发来说,是很不方便的.下面讲解如何开启错误提示步骤: 1. 打开php.ini文件. 以我的ubuntu为例,这个文件在: /etc/php5/apache2 目录下. ...
- Fedora桌面系统Idea中的部分中文无法显示解决
在Linux 桌面开发已经有一段时间了,个人用的是最新的Fedora ,装上idea后,写代码再加中文注释的时候发现部分汉字打不出来,删除的时候发现汉字占着位,只是显示不出来,最初以为是注释问题,调整 ...
- 如何优化Mysql执行查询数据的速度
在项目中数据量小的情况下使用like查询速度还行,但是随着数据一天一天增加,再使用like进行模糊查询的时候速度上就会显得比较慢,现提供两套解决方案: 问题: 使用like查询效率很慢 select ...