一般对于游戏中的精灵而言,它们不仅仅是存在于场景中,而且是动态展现的,例如,精灵移动的动态效果、动

画效果、跳动效果、闪烁和旋转动态效果等。每一种效果都可以看成是精灵的一个动作。

一、动作类(CCAction

和之前介绍的内容不同,Cocos2D-X的动作类CCAction并不是一个在屏幕中显示的对象,动作必须要依托于

CCNode类及它的子类的实例才能发挥作用。CCAction类的继承关系如下图所示。

CCAction类是所有动作类的基类,这也是我们后面将要学习到的所有动作类都是它的子类。而且Cocos2D-X提供

的动作,不仅精灵CCSprite可以使用,只要是CCNode对象都是可以进行动作操作的。

二、动作常用操作

1、对于一个动作的常用操作

<1> 执行一个动作:runAction(CCAction * action)

参数:要执行的动作对象。

<2> 暂停一个动作:CCDirector::sharedDirector()->getActionManager()->pauseTarget(CCObject * pTarget)

参数:暂停目标对象的动作。

<3> 继续一个动作:CCDirector::sharedDirector()->getActionManager()->resumeTarget(CCObject * pTarget)

参数:继续目标对象的动作。

<4> 停止一个动作:

① stopAction(CCAction * action)

参数:停止的目标动作对象。

② stopActionByTag(int tag)

参数:停止的目标动作对象。

<5> 删除一个动作:

① CCDirector::sharedDirector()->getActionManager()->removeAction(CCAction* action)

参数:要删除的目标动作对象。

② CCDirector::sharedDirector()->getActionManager()->removeActionByTag(unsigned int tag,CCObject * pTarget)

参数1:要删除的动作的tag值。

参数2:要删除的动作所在的目标对象。

2、对于多个动作的常用操作

<1> 暂停所有动作:

① pauseSchedulerAndActions()

作用:此函数不仅对所用动作进行暂停,连其更新函数也全部进行暂停。

② CCSet * CCDirector::sharedDirector()->getActionManager()->pauseAllRunningActions()

作用:此函数暂停所有动作,且将暂停的动作对象记录存放在CCSet集合中。

<2> 继续所有动作:

① resumeSchedulerAndActions()

② CCDirector::sharedDirector()->getActionManager()->resumeTargets(CCSet * targetsToResume)

作用:利用记录的已暂停动作的CCSet集合,将其动作继续播放。

<3> 停止所有动作:stopAllActions()

<4> 删除所有动作:CCDirector::sharedDirector()->getActionManager()->removeAllRunningActions()

【Cocos2d-X开发学习笔记】第12期:动作类CCAction的详细讲解的更多相关文章

  1. Rest API 开发 学习笔记(转)

    Rest API 开发 学习笔记 概述 REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表示方式.获得这些表徵致使这些应用程序转变了其状态.随着 ...

  2. 步步为营 SharePoint 开发学习笔记系列总结

    转:http://www.cnblogs.com/springyangwc/archive/2011/08/03/2126763.html 概要 为时20多天的sharepoint开发学习笔记系列终于 ...

  3. JavaSE学习笔记(12)---线程

    JavaSE学习笔记(12)---线程 多线程 并发与并行 并发:指两个或多个事件在同一个时间段内发生. 并行:指两个或多个事件在同一时刻发生(同时发生). 在操作系统中,安装了多个程序,并发指的是在 ...

  4. 【前端】移动端Web开发学习笔记【2】 & flex布局

    上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...

  5. 【前端】移动端Web开发学习笔记【1】

    下一篇:移动端Web开发学习笔记[2] Part 1: 两篇重要的博客 有两篇翻译过来的博客值得一看: 两个viewport的故事(第一部分) 两个viewport的故事(第二部分) 这两篇博客探讨了 ...

  6. 驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址

    驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) ...

  7. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

  8. 高性能Cordova App开发学习笔记

    高性能Cordova App开发学习笔记 文件结构 添加插件 构建准备 各个www的作用,prepare命令会将hello\www的内容会拷贝到platform下的wwww目录,知道该改哪里了吧?如果 ...

  9. Kinect开发学习笔记之(一)Kinect介绍和应用

    Kinect开发学习笔记之(一)Kinect介绍和应用 zouxy09@qq.com http://blog.csdn.net/zouxy09 一.Kinect简单介绍 Kinectfor Xbox ...

随机推荐

  1. 通过GeneXus如何快速构建微服务架构

    概览 “微服务”是一个非常广泛的话题,在过去几年里,市面上存在着各种不同的定义. 虽然对这种架构方式没有一个非常精确的定义,但仍然有一些概念具有代表性. 微服务有着许多围绕业务能力.自动化部署.终端智 ...

  2. golang实现base64编解码

    golang中base64的编码和解码可以用内置库encoding/base64 package main import ( "encoding/base64" "fmt ...

  3. 开始一个Django项目的简单方法

    DATABASES = {     'default': {         'ENGINE': 'django.db.backends.mysql',         'NAME': '数据库名(你 ...

  4. luoguP4492 [HAOI2018]苹果树 组合计数 + dp

    首先,每个二叉树对应着唯一的中序遍历,并且每个二叉树的概率是相同的 这十分的有用 考虑\(dp\)求解 令\(f_i\)表示\(i\)个节点的子树,根的深度为\(1\)时,所有点的期望深度之和(乘\( ...

  5. Mistakes(Updating)

    1.当调试时发现无法正常调用函数时,检查是否发生爆栈 对于每个栈仅有4MB的空间,开int只能开大约5*10^5. 大数组一定要开全局变量 2.当long long=int*int时会爆int,一定要 ...

  6. TF-timeline的使用经验记录

    timeline的使用经验记录:https://towardsdatascience.com/howto-profile-tensorflow-1a49fb18073d 看了TF-summit2018 ...

  7. ZOJ 2819 Average Score 牡丹江现场赛A题 水题/签到题

    ZOJ 2819 Average Score Time Limit: 2 Sec  Memory Limit: 60 MB 题目连接 http://acm.zju.edu.cn/onlinejudge ...

  8. bmp图像数据转jpg图像的C语言实现

    bmp图像格式协议 jpg图像格式协议 Bmp转jpg图像代码 密码:nmaj

  9. redis学习之一 - linux下安装配置

    Content 0.序 1.如何安装? 2.配置参数及其意义 3.设为linux服务 0.序 本文主要是记录Redis在 Centos下的安装配置 .文中如无特别说明.表示redis-3.2.10代码 ...

  10. Python3使用setuptools

    旧版的setuptools已经不能用于Python3上了,国外有大神fork出了另一分支distribute,它可以支持Python3:     1 2 3 4 5 6 7 #下载 wget http ...