[cocos2d-x]关于Action
Action的分类
第一种:FiniteTimeAction类:有限时间的动作类
第二种:Follow类:节点跟随另一种节点的类
第三种:Speed类:节点执行速度类
第一种有限时间的动作类又分为瞬时动作和持续时间的动作。
几个重要的动作类
- Sequence:按顺序执行一系列的动作。但是在执行的动作系列中不能出现Repeat这种无限的动作。
CCMoveTo* move_1 = CCMoveTo::create(1,Vec(100,100));//第一个参数是时间,第二个参数是移动到的坐标
CCMoveBy* move_2 = CCMoveBy::create(1,ccp(100,200));//moveto和moveby的区别:一个是绝对坐标,一个是相对坐标(相对精灵原来的坐标)
CCMoveTo* move_3 = CCMoveBy::create(1,ccp(200,200));
CCSequence* seq = CCSequence::create(move_1,move_2,move_3,NULL);//将三种移动全部集合到一个动作序列
sprite->runAction(seq);//将精灵执行这个动作
2.Spawn:同时执行一系列动作,执行的时间以子动作中最长事件为准。
CCSpawn* action = CCSpawn::create(
CCJumpBy::create(1,Vec(300,0) ,50 ,4),
CCRotateBy::create(2,180), NULL);
sprite->runAction(action);//同时执行这两个动作,边跳跃边旋转
3.Repeat:重复一个动作,可以自定义重复的次数。
CCMoveBy* action = CCMoveBy::create(2,Vec(10,10));
CCRepeat* repeat = CCRepeat::create(action,3);
sprite->runAction(repeat);//动作重复三次
4.RepeatForerver:无限次重复一个动作。
CCRotateBy* rotate = CCRotateBy::create(1.0,360);
CCRepeatForever* action2 = CCRepeatForever::create(rotate);
sprit->runAction(action2);//无限执行这个动作
5.CCMoveTo、CCMoveBy:移动到某一位置
CCMoveBy::create(2, ccp(80,80)) ;
6.CCScaleTo、CCScaleBy:进行一定比例的放大缩小
CCScaleTo::create(2.0f, 0.5f) ;
7.CCSkewTo、CCSkewBy:进行一定角度的拉伸
CCSkewTo::create(2, 37.2f, -37.2f);
8.CCRotateTo、CCRotateBy:进行一定角度的旋转
CCRotateBy::create(2, 45.0f) ;
9.CCJumpTo、CCJumpBy:进行跳跃
CCJumpTo::create(2, ccp(300,300), 50, 4);
10.CCBezierBy、CCBezierTo:贝塞尔曲线
ccBezierConfig bezier;
bezier.controlPoint_1 = ccp(0, 200);
bezier.controlPoint_2 = ccp(300, -200);
bezier.endPosition = ccp(300,100);
CCBezierBy::create(3, bezier);
11.CCBlink:表示闪烁
CCBlink::create(2, 10) ;
[cocos2d-x]关于Action的更多相关文章
- cocos2d中各种action方法的应用
Action示例: 1.移动动作 cc.MoveBy:create(time, posX, posY) 在time时间内,相对当前位置基础上移动x,y个单位. cc.MoveTo:create(ti ...
- !cocos2d 重复添加action事件
当点击的时候,如果不是按照开始点击计算的,那么持续点击会导致不会变大. void Piece::setActived(bool active) { _actived = active; CCActio ...
- 一个简单的游戏开发框架(六.行为Action)
Action是cocos2d-x中比较重要的概念,有一个庞大的类族.参见老G写的cocos2d-x学习笔记09:动作2:持续动作 除了各种包装器,剩下的主要是一些持续动作: CCMoveTo:移动到. ...
- SpriteKit中反转Action需要注意的问题
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在SpriteKit中同样有Cocos2D中类似的Ac ...
- cocos2d-x实战 C++卷 学习笔记--第7章 动作、特效(一)
前言: 介绍cocos2d-x中的动作.特效. 动作: 动作(action)包括基本动作和基本动作的组合,这些基本动作有缩放.移动.旋转等,而且这些动作变化的速度也可以设定. 动作类是 Action. ...
- Cocos2D中Action的进阶使用技巧(二)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 上回说到解决办法是使用CCTargetedAction类. C ...
- Cocos2D中Action的进阶使用技巧(一)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 大家对Cocos2d中动作的使用大概都很清楚了,其实本身act ...
- cocos2D v3.x 中action的回调block变化
cocos2D v2.x中有带参数的回调block: id blk = [CCCallBlockN actionWithBlock:^(CCNode *node){ node.position = o ...
- cocos2d触碰例子代码
// // TestLayer.h // MiniTD // // Created by OnePiece on 12-7-30. // Copyright 2012年 __MyCompanyName ...
- 如何优化cocos2d程序的内存使用和程序大小
在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人 ...
随机推荐
- 6.RabbitMQ系列之direct直连交换器
我们通过fanout exchange(扇型交换机)实现生产者发送一个消息,这个消息同时被传送给所有队列.但是有时我们不希望所有的消息都被所有队列接收,我们希望可以指定类型为a的消息只能被队列A接收, ...
- js红宝书学习笔记(一)引用类型
一.引用类型 ECMAScript中,引用类型是一种数据结构称之为对象定义,,引用对象不同于传统面向对象语言所支持的类和接口等基本结构 创建Object 实例的两种方式: new操作符跟Object构 ...
- C语言编译环境中的 调试功能及常见错误提示
文章目录 1 .调试功能 2 . 编译中的常见错误例析 3 .常见错误信息语句索引 1 .调试功能 1.常用健 <F10> : 激活系统菜单 <F6> : 将光标在编辑窗口和. ...
- JavaScript基础&实战(4)js中的对象、函数、全局作用域和局部作用域
文章目录 1.对象的简介 2.对象的基本操作 2.1 代码 2.2 测试结果 3.属性和属性值 3.1 代码 3.2 测试结果 4.对象的方法 4.1 代码 4.2 测试结果 5.对象字面量 5.1 ...
- 基于 Redis 实现分布式锁
1.主流分布式锁实现方案 基于数据库实现分布式锁 基于缓存(redis 等) 基于 Zookeeper 2.根据实现方式分类 类 CAS 自旋式分布式锁:询问的方式,类似 java 并发编程中的线程获 ...
- 解决@Url.Action("Action", "Controller",new {p1=v1,p2=v2 })的传参问题
1.首先@Url.Action("Action", "Controller",new {p1=v1,p2=v2 })后面的model参数不可以直接用变量 需要先 ...
- c++ 关于引用变量你不知道的东西
引用变量延迟绑定 我们知道引用变量定义时要立刻赋值,告诉编译器他是谁的引用.如果不赋值,编译会失败. 如果引用变量是单个定义的,对他赋值还比较简单. struct test_T { int data; ...
- 区分mbr与gpt分区
查看分区类型 [root@localhost ~]# parted -l|egrep 'dev/|Part' Warning: Unable to open /dev/sr0 read-write ( ...
- MySQL遇到的坑:sql_mode=only_full_group_by不兼容
描述: 解决方案: show variables like "%sql_mode%"; SET sql_mode=(SELECT REPLACE(@@sql_mode," ...
- windows 搭建iis文件服务器
1.运行打开控制面板->程序->启用或关闭Windows功能,勾选下面所有的选项. 注意,必须安装功能所需文件. 等待 关闭即可. 2.在控制面板找到管理工具,不同版本的Windows不尽 ...