/**
* DelayTime延迟
* @param d Duration 延迟时间
*/
auto delayTime = DelayTime::create();
sprite->runAction(delayTime); /**
MoveTo 移动
@param duration 时长
@param position 移动到的位置
*/
auto *moveto = MoveTo::create(1.2f, Vec2(, ));
sprite->runAction(moveto);
/**
MoveBy 移动的距离
@param duration 时长
@param position 移动的距离, 从起始位置移动(100, 200)的位移
*/
auto *moveBy = MoveBy::create(1.2f, Vec2(, ));
sprite->runAction(moveBy); /**
* ScaleTo x, y, z轴按比例缩放 对应于ScaleBy
* @param duration 动作时长
* @param x比例
* @param y比例
* @param z比例
*/
auto *scaleTo = ScaleTo::create(1.2f, 2.0, 0.5, 2.0);
sprite->runAction(scaleTo); /**
RotateTo旋转, 如果是3D, 需要参数Vec3, 表示x, y, z方向旋转角度 对应于RotateBy
@param duration 时长
@param dstAngleX x旋转角度
@param dstAngleY y旋转角度
*/
auto *rotateTo = RotateTo::create(3.0, , );
sprite->runAction(rotateTo); /**
SkewTo 倾斜一定角度 对应于SkewBy
@param t 时长
@param sx x角度
@param sy y角度
*/
auto skewTo = SkewTo::create(3.0, , -);
sprite->runAction(skewTo); /**
* JumpTo创建跳跃动作 对应于JumpBy
* @param duration 时长.
* @param position 目标位置.
* @param height 每次跳跃的高度.
* @param jumps 跳跃次数.
*/
auto jumpTo = JumpTo::create(3.0, Vec2(, ), , );
sprite->runAction(jumpTo); /**
* BezierBy创建贝塞尔曲线动作 对应于BezierTo
* @param t 时长
* @param c 贝塞尔配置.
*/
ccBezierConfig bezier;
bezier.controlPoint_1 = Vec2(-, );
bezier.controlPoint_2 = Vec2(, );
bezier.endPosition = Vec2(, );
auto *bezierBy = BezierBy::create(, bezier);
sprite->runAction(bezierBy); /**
* FadeIn渐渐显示至255, (如果精灵本来就是255透明度, 没有效果) 对应于FadeOut渐渐消失 FadeTo(渐变到..)
* @param duration 时长
*/
auto fadeIn = FadeIn::create(3.0);
sprite->runAction(fadeIn); /**
* TintTo填充颜色渐变 对应于TintBy
* @param duration 时长
* @param red r值 0 to 255.
* @param green g值
* @param blue b值
*/
auto tintTo = TintTo::create(3.0, , , );
sprite->runAction(tintTo); /**
* Blink闪烁
* @param duration 时长
* @param blinks 闪烁次数.
*/
auto *blink = Blink::create(1.0f, );
sprite->runAction(blink); /**
OrbitCamera创建一个球面坐标轨迹进行旋转的动作
@param t 动画时长
@param radius 起始半径
@param deltaRadius 半径差
@param angleZ 起始Z角度
@param deltaAngleZ 旋转Z角度
@param angleX 起始X角度
@param deltaAngleX 旋转X角度
*/
auto orbit = OrbitCamera::create(, , , , , , );
auto reverse = orbit->reverse();
sprite->runAction(reverse); /**CardinalSplineTo创建一个样条曲线轨迹的动作 对应于CardinalSplineBy
* @param duration 时长
* @param points 控制点的坐标数组
* @param tension 拟合度 其值= 0 路径最柔和
*/
PointArray *array = PointArray::create();
array->addControlPoint(Vec2(, ));
array->addControlPoint(Vec2(, ));
array->addControlPoint(Vec2(, ));
array->addControlPoint(Vec2(, ));
array->addControlPoint(Vec2(, )); auto cardinalSplineTo = CardinalSplineTo::create(5.0, array, );
sprite->runAction(cardinalSplineTo); /** CatmullRomTo创建一个样条插值轨迹 对应于CatmullRomBy
* @param 时长
* @param points 控制点的坐标数组
* @code
*/
auto catmullRomTo = CatmullRomTo::create(3.0, array);
sprite->runAction(catmullRomTo); /**
EaseBounceIn 创建有反弹效果的动作(开始时反弹) 对应于EaseBounceOut结束位置反弹, EaseBounceInOut
@param action 目标动作
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeBoundIn = EaseBounceIn::create(moveTo);
sprite->runAction(easeBoundIn); /**
EaseBackOut 让目标动作赋予回力, 且以目标动作终点位置作为回力点 对应于EaseBackIn, EaseBackInOut
@param action 目标动作
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeBackOut = EaseBackOut::create(moveTo);
sprite->runAction(easeBackOut); /**
EaseElasticIn 让目标动作赋予弹性, 且以目标动作起点位子赋予弹性 对应于EaseElasticOut, EaseElasticInOut
@param action 目标动作
@param period
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeElasticIn = EaseElasticIn::create(moveTo, 0.5);
sprite->runAction(easeElasticIn); /**
EaseExponentialIn 让目标动作缓慢开始 对应于EaseExponentialOut, EaseExponentialInOut
@param action 目标动作
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeExponentialIn = EaseExponentialIn::create(moveTo);
sprite->runAction(easeExponentialIn); /**
EaseRateAction 给目标动作设置速率
@param action 目标动作
@param rate 速率
**/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeRateAction = EaseRateAction::create(moveTo, );
sprite->runAction(easeRateAction); /**
EaseSineIn 动作由慢到快 对应于EaseSineOut, EaseSineInOut(动作由慢到快再快到慢)
@param action
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto easeSineIn = EaseSineIn::create(moveTo);
sprite->runAction(easeSineIn); /** Speed 倍速
* @param action 目标动作
* @param speed 几倍速
*/
auto moveTo = MoveTo::create(4.0, Vec2(, ));
auto speed = Speed::create(moveTo, );
sprite->runAction(speed); /* Spawn 组合多个动作
* 参数:多个目标动作
*/
auto spawn = Spawn::create(action1, action2, NULL);
sprite->runAction(spawn); /** Sequence 多个动作顺序执行
* 参数:多个动作 如果要执行反方向动作, 所有动作都得支持反方向动作
*/
auto moveBy = MoveBy::create(4.0, Vec2(, ));
auto scale = ScaleBy::create(2.0, 0.7);
auto sequence = Sequence::create(moveBy, scale, NULL);
auto sequenceRever = Sequence::create(sequence, sequence->reverse(), NULL);
sprite->runAction(sequence);
sprite->runAction(sequenceRever); /* Repeat 重复动作
* @param action 要重复的动作, 可以是Sequence, Spawn类型的
* @param times 重复次数
*/
auto repeat = Repeat::create(sequence, );
sprite->runAction(repeat); /* RepeatForever 永久性重复动作
* @param action 要重复的动作, 可以是Sequence, Spawn类型的
*/
auto repeatForever = RepeatForever::create(sequence, );
sprite->runAction(repeatForever);

//Follow 创建的时候需要设置要追随的精灵,然后让背景来执行follow  (有待继续研究)

/**

* 创建动作可以设置范围, 也可以不设置

* @param followedNode  追随的精灵

* @param rect  如果没有设置, 表示RECT::ZERO, 表示没有范围

*/

Size s = Director::getInstance()->getWinSize();

log("+++++++++s.width:%f, s.height:%f", s.width, s.height);

sprite->setPosition(Vec2(-200, s.height / 2));

auto move      = MoveBy::create(2, Vec2(s.width * 3, 0));

auto move_back = move->reverse();

auto seq       = Sequence::create(move, move_back, NULL);

auto rep       = RepeatForever::create(seq);

sprite->runAction(rep);

this->runAction(Follow::create(sprite, Rect(0, 0, s.width * 2 - 100, s.height)));

顺序执行

Action * action = Sequence::create(moveby, jumpby, rotateby, NULL);

同时执行

Action * action = Spawn::create(moveby, jumpby, rotateby, NULL);

动作Action的更多相关文章

  1. Java基础之处理事件——使用动作Action(Sketcher 6 using Action objects)

    控制台程序. 动作Action是任何实现了javax.swing.Action接口的类的对象.这个接口声明了操作Action对象的方法,例如,存储与动作相关的属性.启用和禁用动作.Action接口扩展 ...

  2. Learning Cocos2d-x for WP8(8)——动作Action

    原文:Learning Cocos2d-x for WP8(8)--动作Action 游戏很大程度上是由动作画面支撑起来的. 动作分为两大类:瞬间动作和延时动作. 瞬间动作基本等同于设置节点的属性,延 ...

  3. 08 Zabbix4.0系统配置事件通知 - 动作Action

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 08 Zabbix4.0系统配置事件通知 - 动作Action 请点击查看Zabbix3.0.8版 ...

  4. 创建一个动作-Action类:

    让我们创建一个Java文件HelloWorldAction.java的Java资源> SRC下一个的包名com.yiibai.struts2与下面的内容. package com.yiibai. ...

  5. libgdx学习记录6——动作Action

    libgdx中的Action类能够有效的帮助我们实现位移.旋转.缩放.淡入淡出等效果,对游戏的设计很有用. Action是一个抽象类,本身不可以实例化.一般使用的它的继承类,常用的有 MoveToAc ...

  6. Asp.Net MVC学习总结(二)——控制器与动作(Controller And Action)

    一.理解控制器 1.1.什么是控制器 控制器是包含必要的处理请求的.NET类,控制器的角色封装了应用程序逻辑,控制器主要是负责处理请求,实行对模型的操作,选择视图呈现给用户. 简单理解:实现了ICon ...

  7. Struts2 In Action笔记_页面到动作的数据流入和流出

    因为回答百度知道的一个问题,仔细查看了<Struts2 In Action>,深入细致的看了 “数据转移OGNL 和 构建视图-标签”,很多东西才恍然大悟. 一直觉得国外写的书很浮,不具有 ...

  8. ASP.NET MVC动作过滤器

    ASP.NET MVC提供了4种不同的动作过滤器(Aciton Filter). 1.Authorization Filter 在执行任何Filter或Action之前被执行,用于身份验证 2.Act ...

  9. 一步步学习ASP.NET MVC3 (7)——Controller,Action,ActionResult

    请注明转载地址:http://www.cnblogs.com/arhat 前面几章我们讲解的都是关于View方面的知识,虽然还有很多关于View的知识没有讲,但是没关系,我们在后面使用到的时候在讲解, ...

随机推荐

  1. .net开发框架设计

    转WisDom .net开发框架设计   WisDom .net 框架设计 1. 为啥要弄 2014 年我已经是我们参加工作的第六年,也做过不少项目,但是发现自己没有代码积累.这里利用业余时间梳理一下 ...

  2. [置顶] 如何使用c3p0+spring连接oracle数据库

    1. 首先是jdbc.properties属性文件的编写,便于数据库移植: datasource.driverClassName=oracle.jdbc.driver.OracleDriver dat ...

  3. 【学习笔记】锋利的jQuery(三)事件和动画

    一.jQuery事件 1,加载事件 $(document).ready(function(){...}) //等同于$(function(){..}) $(window).load(function( ...

  4. C# 毛玻璃效果

  5. Xml转化为DataTable

    /// <summary> /// XML转换为DataTable /// </summary> /// <param name="fileName" ...

  6. Unicode(UTF&UCS)深度历险

    Unicode(UTF&UCS)深度历险 计算机网络诞生后,大家慢慢地发现一个问题:一个字节放不下一个字符了!因为需要交流,本地化的文字需要能够被支持. 最初的字符集使用7bit来存储字符,因 ...

  7. “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第六篇(图片新闻的添加以及带分页的静态页的生成)

    “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第六篇(图片新闻的添加以及带分页的静态页的生成) 一.这篇文章主要是要实现:图片新闻的添加,无刷新图片的上传,以及添加新闻静 ...

  8. Log in Spring

    记录日志向来是企业级应用程序必须考虑的事情.早些年,一个项目一个日志功能或模块,然后有了log4j这样的产品.不知是log4j将记录日志做到了极致,或是技术含量不高,又或是经济利益不明显,它已成为了这 ...

  9. mosquitto MQTT message broker on ubuntu/debian built from source

    what is mosquitto? check this out! http://mosquitto.org what is MQTT? check this out. http://mqtt.or ...

  10. make deb for debian/ubuntu, package software for debian/ubuntu

    here you may find useful information: =====================X8---------------------------------8X==== ...