本文由qinning199原创,转载请注明:http://www.cocos2dx.net/?p=86

Action是CCNode对象的一种顺序。这些动作经常改变对象的一些属性,比如位置,旋转,缩放等。如果这些属性在一段时间内被改变了,他们是CCIntervalAction动作们,否则他们就是CCInstantAction动作。例如,CCMoveBy在一段时间内改变位置属性,因此,这是CCIntervalAction的子类。

你可以运行 TestCpp->Actions测试看一下这个动作的视觉效果

cocos2d-x/samples/Cpp/TestCpp/Classes/ActionsTest,ActionEaseTest是一个应用好的例子。

例子:

两秒的时间向右移动一个精灵50像素,向上10像素
CCActionInterval* actionBy = CCMoveBy::create(2, ccp(50,10));

CCIntervalAction动作有一些有趣的属性:

他们使用时间可改变的动作来加速。

·        CCEaseIn

·        CCEaseOut

·        CCEaseInOut

·        CCSpeed
等等(看一下ActionEaseTest.cpp例子)

你可以pause/resume所以的动作通过使用CCActionManager

// 暂停动作
CCDirector *director = CCDirector::sharedDirector();
m_pPausedTargets =director->getActionManager()->pauseAllRunningActions();
// 重启动作
CCDirector *director = CCDirector::sharedDirector();
director->getActionManager()->resumeTargets(m_pPausedTargets);

基础的动作

基础的动作就是修改基础属性的如下这些

改变动作位置的action:

CCMoveBy
CCMoveTo
CCJumpBy
CCJumpTo
CCBezierBy
CCBezierTo
CCPlace

改变动作缩放的Scale:

CCScaleBy
CCScaleTo

是动作旋转的Rotation:

CCRotateBy
CCRotateTo

改变动作显示的Visibility:

CCShow
CCHide
CCBlink
CCToggleVisibility

改变动作透明度Opacity:

CCFadeIn
CCFadeOut
CCFadeTo

改变动作颜色的Color:

CCTintBy
CCTintTo

例子:

CCSprite *sprite = CCSprite::create("Images/grossini.png");
sprite->setPosition(ccp(100, 100));
addChild(sprite); CCMoveBy* act1 = CCMoveBy::create(0.5, ccp(100, 0));
sprite->runAction(CCRepeat::create(act1,1));

这个act1动作是一个CCMoveBy动作,时间是0.5秒,并且在ccp(100,0)

九、cocos2dx之Actions的更多相关文章

  1. Azure Terraform(九)GitHub Actions 实现 Infra 资源的自动化部署

    思路浅析 使用 Terraform Code 部署 Azure 基础设施资源是特别受欢迎的,我曾经有写文章分享过利用 Azure DevOps 自动部署 Terraform Code 所描述的 Azu ...

  2. 【极客学院出品】Cocos2d-X系列课程之九-BOX2D物理引擎

    Cocos2d-x 是时下最热门的手游引擎,在国内和国外手机游戏开发使用的份额各自是70%和25%,在App Store的top10中,有7个是用它开发的. 本节课程为Cocos2d-x系列课程之九, ...

  3. [置顶] 【玩转cocos2d-x之三十】点九图和输入框的使用

    原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/17297721 登录界面一个帐号/密码输入框或者主角命名框是少不了的.这节就来 ...

  4. 《手把手教你》系列技巧篇(二十九)-java+ selenium自动化测试- Actions的相关操作上篇(详解教程)

    1.简介 有些测试场景或者事件,Selenium根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作.比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某 ...

  5. 【iOS-cocos2d-X 游戏开发之九】Cocos2dx利用CCSAXParser解析xml数据&CCMutableDictionary使用与注意!

    本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/694.html ☞ ...

  6. cocos2d-x游戏引擎核心之九——跨平台

    一.cocos2d-x跨平台 cocos2d-x到底是怎样实现跨平台的呢?这里以Win32和Android为例. 1. 跨平台项目目录结构 先看一下一个项目创建后的目录结构吧!这还是以HelloCpp ...

  7. Cocos2d-x项目移植到WP8系列之九:使用自定义shader

    本文原链接:http://www.cnblogs.com/zouzf/p/3995132.html 有时候想得到一些例如灰度图等特殊的渲染效果,就得用到自定义shader,关于shader的一些背景知 ...

  8. 【玩转cocos2d-x之三十九】Cocos2d-x 3.0截屏功能集成

    3.0的截屏和2.x的截屏基本上同样.都是利用RenderTexture来处理,在渲染之前调用call函数,然后调用Cocos的场景visit函数对其进行渲染,渲染结束后调用end函数就可以.仅仅是3 ...

  9. Cocos2d-X开发中国象棋《九》走棋规则

    在上一节中实现了走棋,这篇博客将介绍中国象棋中的走棋规则 在写博客前先可能一下象棋的走棋规则: 1)将 将的坐标关系:横坐标相等,纵坐标相减绝对值等于1,或者纵坐标相等,横坐标相减绝对值等于1 将的特 ...

随机推荐

  1. Android仿人人客户端(v5.7.1)——个人主页(三)

    转载请标明出处:http://blog.csdn.net/android_ls/article/details/9405089 声明:仿人人项目,所用所有图片资源都来源于其它Android移动应用,编 ...

  2. Jquery $.extend的重载方法详述

    1 $.extend(result,item1,item2,item3,........)  -这个重载方法主要是用来合并,将所有的参数都合并到result中,并返回result,但是这样会破坏res ...

  3. WCF服务

    一.新建windows服务       二.新建wcf服务      三.添加安装程序 四.设置安装程序 五.设置启动代码 6 7 8. 注:当使用管理员身份 安装不成功时,可以使用vs自带的命令工具 ...

  4. Hadoop MR Job 关于如何控制Map Task 数量

    整理下,基本分两个方式: 一.对于大量大文件(大于block块设置的大小) 增大minSize,即增大mapred.min.split.size的值,原因:splitsize=max(minisize ...

  5. Servlet运行过程详解

    比如,在浏览器地址栏输入http://ip:port/web01/hello step1,浏览器依据ip,port建立与servlet容器(容器同时也是一个简单的web服务器)之间的连接. step2 ...

  6. 命令 修改WAMP中mysql默认空密码

    WAMP安装好后,mysql密码是为空的,那么要如何修改呢?其实很简单,通过几条指令就行了,下面我就一步步来操作. 首先,通过WAMP打开mysql控制台. 提示输入密码,因为现在是空, WAMP安装 ...

  7. centos6.5安装pysider遇见的坑

    一.服务器自带pyhon2.7.9 安装pip, # yum -y install python-devel python-setuptool wget http://pypi.python.org/ ...

  8. ASP.NET MVC5 学习笔记-4 OWIN和Katana

    1. Owin OWIN全名:Open Web Interface for .NET. 它是一个说明,而非一个框架,该声明用来实现Web服务器和框架的松耦合.它提供了模块化.轻量级和便携的设计.类似N ...

  9. PROTEL 99SE的打印设置

    现在市面上关于PTROTEL99SE的书很多,但都没有具体叙述有关电路图的打印设置方法.PROTEL99SE的打印设置较之以前的版本有了很多不同之处.特别是在实际做电路板时有些细节须注意. 原理图的打 ...

  10. AES 加密

    package com.sprucetec.tms.utils; import java.security.Key; import javax.crypto.Cipher;import javax.c ...